summaryrefslogtreecommitdiff
path: root/thread_pthread.c
diff options
context:
space:
mode:
authorkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-09-22 10:45:23 +0000
committerkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-09-22 10:45:23 +0000
commit010c8e5970a662db9a57886cdbcbdc7574c87664 (patch)
tree9523d34035719b526554400b12c7902b0af03a66 /thread_pthread.c
parentdf1a46fd4bd96a8e8389cbfaa29a4732e5e2d0f6 (diff)
merge revision(s) 33307:
* thread_pthread.c (ubf_select): activate timer thread when interrupt blocking thread. A patch created by Koichi Sasada. [ruby-core:39634] [Bug #5343] to cover race condition, timer thread periodically send SIGVTARLM to threads in signal thread list. so you should activate timer thread when interrupt a thread. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@33310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread_pthread.c')
-rw-r--r--thread_pthread.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/thread_pthread.c b/thread_pthread.c
index 068998e1da..7fa13e2a9c 100644
--- a/thread_pthread.c
+++ b/thread_pthread.c
@@ -1013,6 +1013,7 @@ ubf_select(void *ptr)
{
rb_thread_t *th = (rb_thread_t *)ptr;
add_signal_thread_list(th);
+ rb_thread_wakeup_timer_thread(); /* activate timer thread */
ubf_select_each(th);
}