[Anthy-dev 543] Re: uim-xim and uim-helper-server problem on Mac OS X

アーカイブの一覧に戻る

TOKUNAGA Hiroyuki tkng****@xem*****
2004年 2月 10日 (火) 22:13:17 JST


On Tue, 10 Feb 2004 16:23:05 +0900
Etsushi Kato <ekato****@ees*****> wrote:

> Mac OS X 10.3 の X Window 上で使うという、少し(?)特殊な環境なのですが
> 、いくつか問題がありました。
> 
> まず gnome2 のパネルで uim-helper-applet を動かしても、表示が "?" のま
> まで変化してくれません。これには二つ(?)問題があるようで、一つは
> uim-helper-client.c の uim_helper_init_client_fd() の中での、
> fst.st_uid != getuid() のチェックでひっかかってしまうという点です。Mac
> OS X では fst.st_uid が 0 になっていました。とりあえず、いまのところチ
> ェックを外して動かしています。もう一つは、uim-helper-server が
> execlep() で呼び出されるとなぜだかすぐにクラッシュしてしまうようです。
> 手動で先に動かしておくと特に問題なく動くようなので、ちょっとよくわかり
> ません。このように uim-helper-client.c の変更と、uim-helper-server 
> を先に動かしておくということをすれば、いちおう Mac OS X でも
> uim-helper-applet の表示がされるようになりました。

 fst.st_uid != getuid()のチェックを外すのはセキュリティ的にあまりよろし
くないような気がします。個人でわかってて外す分には構わないとは思うのです
が。

 uim-helper-serverがexeclp()で呼び出されるとすぐにクラッシュするという
のは、パスが通ってないところにuim-helper-serverがインストールされている
というわけではないですよね?なぜ落ちるのか、ちょっと予想がつきません。

> あと uim-xim についてですが、Mac OS X では canddisp.cpp の fflush() に
> よって SIGPIPE で uim-xim が落ちてしまうようです。uim-xim の main() に
> SIGPIPE を無視するようにコードを追加していただけるとありがたいです。

 とりあえず、無視するようにはしておきました。私はSIGPIPEが送られてくる
のはhelper-serverが落ちて書き込めなかったときではないかと思っています。
よければもう少し状況を説明していただけませんか?

-- 
徳永拓之
http://kodou.net/



Anthy-dev メーリングリストの案内
アーカイブの一覧に戻る