summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-04-22 04:26:44 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-04-22 04:26:44 +0000
commit2aadcb8f5d0fbdd5db86348fa961e5c6528b0a08 (patch)
tree7f7b447f0a5054841a0820bec0dfe3ee55e81fa3
parent1bee8a8b459baf3862e38389a8b49b30f5f0bae1 (diff)
downloadruby-2aadcb8f5d0fbdd5db86348fa961e5c6528b0a08.tar.gz
ruby-2aadcb8f5d0fbdd5db86348fa961e5c6528b0a08.tar.xz
ruby-2aadcb8f5d0fbdd5db86348fa961e5c6528b0a08.zip
* thread.c (rb_thread_stop_timer_thread): should clear
timer_thread_id after stopping it. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--bootstraptest/test_knownbug.rb4
-rw-r--r--bootstraptest/test_thread.rb5
-rw-r--r--thread.c1
4 files changed, 11 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index b5e0859ae..e33202e2c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Apr 22 13:19:48 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * thread.c (rb_thread_stop_timer_thread): should clear
+ timer_thread_id after stopping it.
+
Tue Apr 22 13:12:58 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (thread_join): remove the current thread from the join list
diff --git a/bootstraptest/test_knownbug.rb b/bootstraptest/test_knownbug.rb
index cbec6bc5d..87efa9f96 100644
--- a/bootstraptest/test_knownbug.rb
+++ b/bootstraptest/test_knownbug.rb
@@ -155,7 +155,3 @@ assert_equal 'ok', %q{
:ng
end
}, "[ruby-dev:34236]"
-
-assert_normal_exit %q{
- exec "/"
-}
diff --git a/bootstraptest/test_thread.rb b/bootstraptest/test_thread.rb
index 873e95529..fde04a8d4 100644
--- a/bootstraptest/test_thread.rb
+++ b/bootstraptest/test_thread.rb
@@ -229,3 +229,8 @@ assert_finish 3, %{
end
th.join
}
+
+assert_normal_exit %q{
+ STDERR.reopen(STDOUT)
+ exec "/"
+}
diff --git a/thread.c b/thread.c
index bcabb59ec..2f1ff92e8 100644
--- a/thread.c
+++ b/thread.c
@@ -2008,6 +2008,7 @@ rb_thread_stop_timer_thread(void)
if (timer_thread_id) {
system_working = 0;
native_thread_join(timer_thread_id);
+ timer_thread_id = 0;
}
}