summaryrefslogtreecommitdiff
path: root/thread_sync.c
diff options
context:
space:
mode:
Diffstat (limited to 'thread_sync.c')
-rw-r--r--thread_sync.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/thread_sync.c b/thread_sync.c
index 5e511af0db..7b1054b2ac 100644
--- a/thread_sync.c
+++ b/thread_sync.c
@@ -438,7 +438,7 @@ rb_mutex_cleanup_keeping_mutexes(const rb_thread_t *current_thread)
static VALUE
rb_mutex_sleep_forever(VALUE time)
{
- rb_thread_sleep_deadly_allow_spurious_wakeup();
+ sleep_forever(GET_THREAD(), SLEEP_DEADLOCKABLE|SLEEP_BEFORE_CHECK_INTS);
return Qnil;
}
@@ -446,7 +446,8 @@ static VALUE
rb_mutex_wait_for(VALUE time)
{
struct timespec *t = (struct timespec*)time;
- sleep_timespec(GET_THREAD(), *t, 0); /* permit spurious check */
+ /* permit spurious check */
+ sleep_timespec(GET_THREAD(), *t, SLEEP_BEFORE_CHECK_INTS);
return Qnil;
}