[MacRuby] #883: Abort occurs when calls Thread#kill, Using 32bit arch.
MacRuby
ruby-noreply at macosforge.org
Tue Aug 31 19:43:58 PDT 2010
#883: Abort occurs when calls Thread#kill, Using 32bit arch.
----------------------------------+-----------------------------------------
Reporter: watson1978@… | Owner: lsansonetti@…
Type: defect | Status: new
Priority: blocker | Milestone:
Component: MacRuby | Keywords:
----------------------------------+-----------------------------------------
Comment(by watson1978@…):
It seem to do crash when rb_vm_thread_throw_kill() and rb_exit() are
executed.
{{{
(gdb) r
Starting program: /Users/watson/src/MacRuby/macruby -v -I./lib t.rb
warning: posix_spawn failed, trying execvp, error: 86
MacRuby 0.7 (ruby 1.9.2) [universal-darwin10.0, i386]
Breakpoint 2, rb_exit (status=0) at process.c:2473
2473 ruby_finalize();
(gdb) c
Continuing.
[Switching to process 50554]
Breakpoint 1, rb_vm_thread_throw_kill () at vm.cpp:4393
4393 throw new RoxorThreadRaiseException();
(gdb) bt
#0 rb_vm_thread_throw_kill () at vm.cpp:4393
#1 0x00138d64 in rb_vm_thread_destructor (userdata=0x207a9d0) at
vm.cpp:4399
#2 0x91895ddb in _pthread_exit ()
#3 0x9188df4a in _pthread_testcancel ()
#4 0x9188d8e7 in _pthread_cond_wait ()
#5 0x9188d875 in pthread_cond_timedwait$UNIX2003 ()
#6 0x00147c4f in rb_thread_wait_for (time={tv_sec = 1, tv_usec = 0}) at
vm.cpp:4606
#7 0x0008d7ae in rb_f_sleep (recv=33676048, sel=0x15b6c80, argc=1,
argv=0xb0184c04) at process.c:2930
#8 0x0012cd27 in ruby_dispatch [inlined] () at
/Users/watson/src/MacRuby/dispatcher.cpp:435
#9 0x0012cd27 in rb_vm_dispatch () at dispatcher.cpp:816
#10 0x01700505 in ?? ()
#11 0x017008e3 in ?? ()
#12 0x00130d58 in __rb_vm_bcall [inlined] () at
/Users/watson/src/MacRuby/dispatcher.cpp:98
#13 0x00130d58 in vm_block_eval [inlined] () at
/Users/watson/src/MacRuby/dispatcher.cpp:1162
#14 0x00130d58 in rb_vm_block_eval (b=0x204f100, argc=0, argv=0x0) at
dispatcher.cpp:1169
#15 0x001477ba in rb_vm_thread_run (thread=34056656) at vm.cpp:4423
#16 0x9188d81d in _pthread_start ()
#17 0x9188d6a2 in thread_start ()
Current language: auto; currently c++
(gdb) n
terminate called after throwing an instance of
'RoxorThreadRaiseException*'
Program received signal SIGABRT, Aborted.
[Switching to process 50554]
0x91860142 in semaphore_wait_signal_trap ()
}}}
{{{
(gdb) r
Starting program: /Users/watson/src/MacRuby/macruby -v -I./lib t.rb
warning: posix_spawn failed, trying execvp, error: 86
MacRuby 0.7 (ruby 1.9.2) [universal-darwin10.0, i386]
[Switching to process 50611]
Breakpoint 2, rb_vm_thread_throw_kill () at vm.cpp:4393
4393 throw new RoxorThreadRaiseException();
(gdb) c
Continuing.
Current language: auto; currently c++
[Switching to process 50611]
Breakpoint 1, rb_exit (status=0) at process.c:2473
2473 ruby_finalize();
(gdb) bt
#0 rb_exit (status=0) at process.c:2473
#1 0x00001b52 in main (argc=4, argv=0x15060f0, envp=0xbfffe980) at
main.cpp:40
Current language: auto; currently c
(gdb) c
Continuing.
terminate called after throwing an instance of
'RoxorThreadRaiseException*'
Program received signal SIGABRT, Aborted.
0x91865aa4 in pthread_mutex_lock ()
}}}
--
Ticket URL: <http://www.macruby.org/trac/ticket/883#comment:1>
MacRuby <http://macruby.org/>
More information about the macruby-tickets
mailing list