aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--thread_pthread.c5
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 88b6d10c23..891fb492ed 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Wed Dec 30 02:55:09 2015 Eric Wong <e@80x24.org>
+
+ * thread_pthread.c (setup_communication_pipe): delay setting owner
+ (rb_thread_create_timer_thread): until thread creation succeeds
+ [ruby-core:72590] [Bug #11922]
+
Tue Dec 29 19:12:46 2015 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (proc_options): -W command line option should be able to
diff --git a/thread_pthread.c b/thread_pthread.c
index 2a15816713..46cc5715c4 100644
--- a/thread_pthread.c
+++ b/thread_pthread.c
@@ -1406,8 +1406,6 @@ setup_communication_pipe(void)
return e;
}
- /* validate pipe on this process */
- timer_thread_pipe.owner_process = getpid();
return 0;
}
@@ -1615,6 +1613,9 @@ rb_thread_create_timer_thread(void)
#endif
return;
}
+
+ /* validate pipe on this process */
+ timer_thread_pipe.owner_process = getpid();
timer_thread.created = 1;
#ifdef HAVE_PTHREAD_ATTR_INIT
pthread_attr_destroy(&attr);