|
sylpheed-jp:2146
From: "Noriaki.Seki@xxxxxxxxxx" <Noriaki.Seki@xxxxxxxxxx> 関です。 今年も宜しくお願い致します。 > とりあえず、 LBREAK_IF_REQUIRED() の定義を空に > (#define LBREAK_IF_REQUIRED(cond) だけに)するとどうなるか試して頂けます > か? 残念ながら、Segmentation faultで落ちてしまいました... 色々試したところ、isspace(isasciiなどもか?)の動作が怪しそうでした。 (実際、gcc-2.7.2.3、2.95.3、3.2の全てで同様な現象が起きていたので、 コンパイラのせいではなさそうでした。) Solaris 8のisspaceを辿ると、 /usr/include/iso/ctype_iso.h 中に 次のような関数マクロとして定義されていました。 #define _S 0x00000008 /* Spacing character */ extern unsigned char __ctype[]; #define isspace(c) ((__ctype + 1)[c] & _S) ただ、nmで/usr/lib/libc.so.1のシンボルを見ると、libc中には関数として 存在していたので、 1. 適当な所に空っぽのctype.hを作る。(touch ctype.h) 2. 強制的に1をインクルードさせる。(make CC='gcc -include ctype.h') というやり方でlibcの関数を呼ぶようにしたら、-O2オプション付きでも 文字化けしなくなりました。 というわけで、Sylpheedのバグではなく、OS側の問題のようです。 どうも、お騒がせして申し訳ありませんでした。 # SunSolveを探してみましたが、パッチは見当たりませんでした... // 関 2125 2002-12-26 11:05 [Noriaki.Seki@xxxxxxx] 件名の文字化け 2126 2002-12-26 14:44 ┣[Noriaki.Seki@xxxxxxx] @ 2127 2002-12-26 15:27 ┣[hiro-y@xxxxxxxxxx ] 2128 2002-12-26 16:06 ┃┗[Noriaki.Seki@xxxxxxx] 2129 2002-12-26 16:16 ┃ ┗[hiro-y@xxxxxxxxxx ] 2134 2002-12-26 17:57 ┃ ┗[Noriaki.Seki@xxxxxxx] 2135 2002-12-26 18:16 ┃ ┗[hiro-y@xxxxxxxxxx ] 2145 2003-01-07 16:37 ┣[hiro-y@xxxxxxxxxx ] -> 2146 2003-01-09 14:48 ┃┗[Noriaki.Seki@xxxxxxx] 2147 2003-01-10 01:48 ┃ ┣[manabey0@xxxxxxxxxx ] 2148 2003-01-10 02:21 ┃ ┗[yosshy@xxxxxxxxxx ] 2159 2003-01-18 10:39 ┗[miyagi@xxxxxxxxxx ] |