From 86aeca931cbd697167fbee85aff13d1c3b439a12 Mon Sep 17 00:00:00 2001 From: akr Date: Sun, 12 Jun 2005 16:23:08 +0000 Subject: [PATCH] * eval.c (rb_gc_mark_threads): curr_thread may not be part of the thread list. [ruby-dev:26312] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ eval.c | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3af21baf03..7072cb35ef 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Mon Jun 13 01:20:02 2005 Tanaka Akira + + * eval.c (rb_gc_mark_threads): curr_thread may not be part of the + thread list. + [ruby-dev:26312] + Sat Jun 11 22:34:44 2005 Minero Aoki * parse.y: missing arg_paren event. This patch is contributed by diff --git a/eval.c b/eval.c index c6b756eb52..ce82e6c8eb 100644 --- a/eval.c +++ b/eval.c @@ -10225,9 +10225,9 @@ rb_gc_mark_threads() rb_gc_mark((VALUE)ruby_cref); if (!curr_thread) return; - FOREACH_THREAD(th) { + FOREACH_THREAD_FROM(main_thread, th) { rb_gc_mark(th->thread); - } END_FOREACH(th); + } END_FOREACH_FROM(main_thread, th); if (new_thread.thread) { rb_gc_mark(new_thread.thread->thread); rb_gc_mark(new_thread.proc);