From 682a52e61cbc7ca5674e5bb546621b78fe4f7ab9 Mon Sep 17 00:00:00 2001 From: nobu Date: Tue, 29 May 2007 19:28:25 +0000 Subject: [PATCH] * eval.c (thread_timer): timer thread should not receive any signals. submitted by Sylvain Joyeux. [ruby-core:08546] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ thread_pthread.ci | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/ChangeLog b/ChangeLog index b305580caf..954bb406e9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Wed May 30 04:29:43 2007 Nobuyoshi Nakada + + * thread_pthread.ci (thread_timer): timer thread should not + receive any signals. submitted by Sylvain Joyeux. + [ruby-core:08546] + Wed May 30 04:18:37 2007 Nobuyoshi Nakada * eval.c (rb_eval_cmd): just return if no exceptions. diff --git a/thread_pthread.ci b/thread_pthread.ci index 43dac0be5a..61ef65a478 100644 --- a/thread_pthread.ci +++ b/thread_pthread.ci @@ -462,6 +462,11 @@ static void timer_thread_function(void); static void * thread_timer(void *dummy) { + sigset_t all_signals; + + sigfillset(&all_signals); + pthread_sigmask(SIG_BLOCK, &all_signals, 0); + while (system_working) { #ifdef HAVE_NANOSLEEP struct timespec req, rem;