summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-09-08 12:48:17 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-09-08 12:48:17 +0000
commit0ac484b220e59e5c0149f8b2bbd39b0e95f544ba (patch)
tree4ae7e804c52b3d6e75dfe849ed19c4df07ac0352
parent711670d251581a06b7391866ec9ae19d0523f729 (diff)
downloadruby-0ac484b220e59e5c0149f8b2bbd39b0e95f544ba.tar.gz
ruby-0ac484b220e59e5c0149f8b2bbd39b0e95f544ba.tar.xz
ruby-0ac484b220e59e5c0149f8b2bbd39b0e95f544ba.zip
* vm.c (rb_thread_mark): mark callers iseqs. [ruby-core:25474]
[Bug #2062] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@24790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--vm.c1
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index f8b06d2fd..125624432 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Sep 8 21:48:15 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * vm.c (rb_thread_mark): mark callers iseqs. [ruby-core:25474]
+ [Bug #2062]
+
Tue Sep 8 11:53:58 2009 Koichi Sasada <ko1@atdot.net>
* iseq.c (iseq_mark): no need to mark inline cache entries.
diff --git a/vm.c b/vm.c
index 6874fe829..3db6cc726 100644
--- a/vm.c
+++ b/vm.c
@@ -1573,6 +1573,7 @@ rb_thread_mark(void *ptr)
while (cfp != limit_cfp) {
rb_gc_mark(cfp->proc);
+ if (cfp->iseq) rb_gc_mark(cfp->iseq->self);
cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(cfp);
}
}