summaryrefslogtreecommitdiffstats
path: root/thread.c
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-28 14:15:54 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-28 14:15:54 +0000
commitf0739b6f1e30a8328696767c8b99dad9fd249346 (patch)
treecb06db0570933f410b0ca69130e9f9fdfe6858e3 /thread.c
parent3f21c1cdb145fcb6106d77e6c7415e3fcaf8c91e (diff)
merges r24616 from trunk into ruby_1_9_1.
-- * thread.c (rb_check_deadlock): decrease number of sleepers before deadlock detection because the deadlock exception makes main thread run. [ruby-dev:39142] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_9_1@25541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread.c')
-rw-r--r--thread.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/thread.c b/thread.c
index c51499488..78571590c 100644
--- a/thread.c
+++ b/thread.c
@@ -3955,6 +3955,7 @@ rb_check_deadlock(rb_vm_t *vm)
printf("%d %d %p %p\n", vm->living_threads->num_entries, vm->sleeper, GET_THREAD(), vm->main_thread);
st_foreach(vm->living_threads, debug_i, (st_data_t)0);
#endif
+ vm->sleeper--;
rb_thread_raise(2, argv, vm->main_thread);
}
}