summaryrefslogtreecommitdiff
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
commit96765d153f5d277734c7cc9ace394edd9299576e (patch)
tree8bce5ede827990c688f775d535fc8581e514d5be /iseq.c
parent199a95775b4f0e8d7ecab2946b8d7c250a695f40 (diff)
* iseq.c (rb_iseq_clone): should preserve cref_stack link.
git-svn-id: svn+ssh://ci.ruby-lang.org/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 f5dd37d264..84c3b741e5 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;