summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-09-07 08:16:11 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-09-07 08:16:11 +0000
commit09edb78ff0548cba7a545b3fd579b1cdcd5a36be (patch)
treeb8c51439ab0eb6b0ab531887fd57c9b60f8f75c3
parente90f7de04fac518947c6da19ecdb31597e807c0d (diff)
* eval.c (rb_thread_start_0): should unset time_thread_alive_p.
[ruby-talk:257219], [ruby-core:11542], [ruby-dev:31253] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_6@13401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--eval.c7
-rw-r--r--version.h2
3 files changed, 13 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 942dec4..031b1d4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Fri Sep 7 17:06:16 2007 Vincent Isambart <vincent.isambart@gmail.com>
+
+ * eval.c (rb_thread_start_0): should unset time_thread_alive_p.
+ [ruby-talk:257219], [ruby-core:11542], [ruby-dev:31253]
+
Fri Sep 7 16:39:23 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_subseq): need integer overflow check.
diff --git a/eval.c b/eval.c
index 3dd1076..7911ce8 100644
--- a/eval.c
+++ b/eval.c
@@ -11846,6 +11846,12 @@ rb_thread_stop_timer()
}
void
+rb_child_atfork()
+{
+ time_thread_alive_p = 0;
+}
+
+void
rb_thread_cancel_timer()
{
#ifdef _THREAD_SAFE
@@ -11939,6 +11945,7 @@ rb_thread_start_0(fn, arg, th)
#ifdef _THREAD_SAFE
pthread_create(&time_thread, 0, thread_timer, 0);
time_thread_alive_p = 1;
+ pthread_atfork(0, 0, rb_child_atfork);
#else
rb_thread_start_timer();
#endif
diff --git a/version.h b/version.h
index 7254457..c0881dc 100644
--- a/version.h
+++ b/version.h
@@ -2,7 +2,7 @@
#define RUBY_RELEASE_DATE "2007-09-07"
#define RUBY_VERSION_CODE 186
#define RUBY_RELEASE_CODE 20070907
-#define RUBY_PATCHLEVEL 100
+#define RUBY_PATCHLEVEL 101
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8