From f9c6aa9f11b18f7cdc8d3e56cfb373107bcb61e3 Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 31 Dec 2005 13:57:36 +0000 Subject: [PATCH] * eval.c (rb_thread_save_context): should not recycle scope object used in a thread. fixed: [ruby-dev:28177] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ eval.c | 1 + 2 files changed, 6 insertions(+) diff --git a/ChangeLog b/ChangeLog index e5d0d43e8c..870bd9b36b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sat Dec 31 22:57:00 2005 Nobuyoshi Nakada + + * eval.c (rb_thread_save_context): should not recycle scope object used + in a thread. fixed: [ruby-dev:28177] + Fri Dec 30 18:22:42 2005 Nobuyoshi Nakada * gc.c (garbage_collect): mark objects refered from aborting threads. diff --git a/eval.c b/eval.c index 49dfe28cd7..a354b3ab16 100644 --- a/eval.c +++ b/eval.c @@ -10117,6 +10117,7 @@ rb_thread_save_context(th) th->frame = ruby_frame; th->scope = ruby_scope; + ruby_scope->flags |= SCOPE_DONT_RECYCLE; th->klass = ruby_class; th->wrapper = ruby_wrapper; th->cref = ruby_cref;