summaryrefslogtreecommitdiffstats
path: root/iseq.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-11 11:39:09 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-11 11:39:09 +0000
commit3670922433e71c514ab875c4b588b5473fe54aad (patch)
tree8bce5ede827990c688f775d535fc8581e514d5be /iseq.c
parent07399ed6890a034911a87529f517aa898a397227 (diff)
downloadruby-3670922433e71c514ab875c4b588b5473fe54aad.tar.gz
ruby-3670922433e71c514ab875c4b588b5473fe54aad.tar.xz
ruby-3670922433e71c514ab875c4b588b5473fe54aad.zip
* iseq.c (rb_iseq_clone): should preserve cref_stack link.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'iseq.c')
-rw-r--r--iseq.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/iseq.c b/iseq.c
index f5dd37d26..84c3b741e 100644
--- a/iseq.c
+++ b/iseq.c
@@ -1246,6 +1246,9 @@ rb_iseq_clone(VALUE iseqval, VALUE newcbase)
}
if (newcbase) {
iseq1->cref_stack = NEW_BLOCK(newcbase);
+ if (iseq0->cref_stack->nd_next) {
+ iseq1->cref_stack->nd_next = iseq0->cref_stack->nd_next;
+ }
}
return newiseq;