diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | thread_pthread.c | 2 |
2 files changed, 6 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Fri Nov 7 07:43:27 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread.c (thread_timer): pthread_cond_timedwait returns ETIMEDOUT + when timed out. + Fri Nov 7 07:32:55 2008 Yukihiro Matsumoto <matz@ruby-lang.org> * lib/yaml/rubytypes.rb: support Rational and Complex as 1.8 diff --git a/thread_pthread.c b/thread_pthread.c index d7d1eb52f9..e73879119a 100644 --- a/thread_pthread.c +++ b/thread_pthread.c @@ -672,7 +672,7 @@ thread_timer(void *dummy) static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_lock(&lock); -#define WAIT_FOR_10MS() (pthread_cond_timedwait(&timer_thread_cond, &lock, get_ts(&ts, PER_NANO/100)) == 0) +#define WAIT_FOR_10MS() (pthread_cond_timedwait(&timer_thread_cond, &lock, get_ts(&ts, PER_NANO/100)) == ETIMEDOUT) while (WAIT_FOR_10MS()) { #ifndef __CYGWIN__ if (signal_thread_list_anchor.next) { |