From: ts Date: 2004-10-16T22:06:38+09:00 Subject: Re: [BUG] segfault in ruby-1.8.2p2 >>>>> "B" == Brian Candler writes: B> #4 0xbfbfffac in ?? () Well, what you don't see is that ruby is in scope_dup(tag->scope) B> #5 0x2809127f in eval () from /usr/local/lib/libruby18.so.18 [...] B> #78 0x280866fe in ruby_exec () from /usr/local/lib/libruby18.so.18 here is the problem : one thread has a reference to ruby_exec() in its stack and more precisely to _tag which is created in ruby_exec() This is precisely when ruby use this value for the call to scope_dup() that it crash. The reason is that the main thread has leaved ruby_exec() and ruby is actually executing rb_thread_wait_other_threads() in ruby_cleanup() When it try to reference tag, in another thread, it make reference to a variable which don't exist on the stack : this is why it crash Guy Decoux