[sylpheed-jp:10969] Re: [Q] Actionの引数 %f(ファイル名) %F(ファイルリスト)の挙動の違いについて

Hiroyuki Yamamoto hiro-y @ kcn.ne.jp
2010年 6月 9日 (水) 14:49:11 JST


山本です。

On Wed, 9 Jun 2010 10:07:57 +0900
"OOSATO, Kazzrou" <kazz @ kk.iij4u.or.jp> wrote:

> 大里です。
> 
> 最初のメールで書いた「fetch できない→落ちる」という関係は逆のような
> 気がしてきました。
> gdb 上で実行すると、ときどき成功することも多いのです。
> 直接実行するとだいたいコケます。
> ということは、タイミングの問題があって、gdb のオーバーヘッドで救われて
> る? fetch そのものじゃなくて fork の方の問題かなぁ
> 
> kazz @ mercury:~$ cat bin/ACTION
> #! /bin/bash
> sleep ${1}
> head -3 ${2}
> cat ${2} > /dev/null
> exit  0
> 
> こういうスクリプトを書いて
> ACTION 1 %f
> だと、成功しますが、
> ACTION 0 %f
> では fetch 対象となるメールが少し多いと落ちます。

ざっとソースをチェックしたところ、 gdk_input_add で入出力を捕捉するところで、
本来であればスレッドのロックを確保しないといけないところで確保していない
ところがありました。このため、タイミングによって落ちたり落ちなかったり
するのではないかと思われます。とりあえず対策してみます。

-- 
Hiroyuki Yamamoto <hiro-y @ kcn.ne.jp>


Sylpheed-jp メーリングリストの案内