From: SASADA Koichi Date: 2012-06-13T11:32:12+09:00 Subject: [ruby-core:45616] Re: [ruby-trunk - Bug #6575][Open] Thread#kill sets rb_errinfo() to Fixnum 8 after rb_protect(function, data, &error_tag) Hi, (2012/06/11 20:27), ibc (I��aki Baz Castillo) wrote: > Using rb_protect() I've realized that when the thread is killed by other thread using Thread#kill, the error_tag passed to rb_protect() is set to 8 and rb_errinfo() returns Fixnum 8: > > > ret = rb_protect(function, data, &error_tag); > > // While executing function() in Ruby land, our thread is > // killed by Thread.kill. > > // If now I inspect rb_errinfo() it returns Fixnum 8, and > // error_tag it's set to integer 8. > > > Is it the expected behaviour? Wouldn't make more sense rb_errinfo() to return some kind of a new exception ThreadKilledException or whatever instead of Fixnum 8? > > I don't have an idea. Could you show us the complete *small* example on it? I want to try on my environment. Thanks, Koichi -- // SASADA Koichi at atdot dot net