[Mew-dist 03476] Re: refile がおかしい。
Masahiro MURATA ( 村田全寛 )
muse at example.com
1998年 1月 22日 (木) 20:46:58 JST
村田です。
>>> In [Mew-dist 03465] refileがおかしい。
>>> 小川真司 wrote:
> XEmacsでrefileがうまくいきません。
(略)
> 環境は下記のとおりです。
> ・XEmacs-20.5b20
> ・mew-1.93b8
> ・im-83
HP-UX 9.07, Emacs-20.2, Mew-1.93b8, im-80,83 という環境です。この問題
は昨年に気づいたのですが,原因を調べるためと忙しさで今まで放置していまし
た。
Emacs-20.2 の問題なのかどうかは解りませんが,報告しておきます。
Mule-2.3 (Emacs-19.34)では以下の問題は起こりません。
mew-mark.el にある関数 mew-summary-exec-mvrm で immv などを実行してい
ますが,プロセスが終了しているにもかかわらず,set-process-sentinel で指
定された関数 mew-summary-mvrm-sentinel がいつまで経っても呼ばれません。
ですので,while 文のところでループし続けることになってしまいます。
start-process を呼ぶ時に process-connection-type を nil にするか,もし
くは以下の while 部分
(while (eq (process-status mew-summary-buffer-process) 'run)
(accept-process-output mew-summary-buffer-process)
)
において accept-process-output を使わずに sit-for に変えると sentinel の
関数が呼ばれるようになります。
(while (eq (process-status mew-summary-buffer-process) 'run)
(sit-for 1)
)
しかし,HP-UX 9 上であっても Mule-2.3 (Emacs-19.34) では
process-connection-type を t にして上記のように accept-process-output を
使っても,プロセスが終了すれば sentinel で指定した関数が呼ばれるようなの
で,Emacs-20.2 の問題なのかも知れません。
結局,現在の回避方法としては,process-connection-type を nil にすると
パスワード入力の部分で問題がでそうなので,accept-process-output を使わな
いような変更をした方がよいと思います。
--
村田 全寛 / MURATA Masahiro
Mew-dist メーリングリストの案内