Noritada Kobayashi
norit****@gmail*****
2008年 9月 9日 (火) 17:48:11 JST
小林です。 2008/09/09 13:22 Kouhei Sutou <kou****@cozmi*****>: >> 起動時に~/.kazehakase/clip.xmlがあるとRuby関連のsegfaultが起きる、 >> というバグで、バックトレースも同バグのバグ報告に収められています。 > > clip.xmlは単にGCのタイミングに関連しているだけかと思います。 > 例えば、こうすると、clip.xmlがあってももう少し先に進みそうな気がします。 確かにGCはタイミングの問題なので、clip.xmlはあまり関係なさそうですね……。 > バックトレースをみると、 > #4 0xb6dff787 in str_alloc (klass=3067261960) at string.c:67 > #5 0xb6dff80c in str_new (klass=8, ptr=0x81141f8 ":", len=1) at string.c:89 > となっていて、ソースをみるとstr_new()のklassはそのままstr_alloc()の > klassとして渡されるだけなのに大きく値が違っているので、もっと別の > 場所で何かが壊れているのだと思います。 > > > それは別として、Rubyのend_procsたちは初期化されていてもよさそう > な気がします。そうすれば > #1 0xb6d8ad2b in rb_mark_end_proc () at eval.c:7989 > の中でwhile (link)でループに入ることもなく、gc_mark()も呼ばれないよ > うな気もします。 > > ということでRubyにこのパッチを当てると挙動は変わりますか? ありがとうございます。 当ててインストールしてみたのですが変わりませんでした……。 # なんかruby1.8にreassignしたんですが、 # libgtk-ruby1.8のほうにreassignされちゃいました……。 -- Noritada Kobayashi <norit****@gmail*****>