diff options
author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-02-25 08:31:54 +0000 |
---|---|---|
committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-02-25 08:31:54 +0000 |
commit | 967f56114a2ea9955005765235c9f43863d1413e (patch) | |
tree | 3d16e80e9403b44154d46b54d9c7333c2ceab0b5 | |
parent | 852d56ff805dc0c266fb9643b24db4819898ad87 (diff) |
* class.c (clone_method): fixed missing assignment introduced by
previous commit.
* vm_insnhelper.c (rb_vm_rewrite_cref_stack): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@49745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | class.c | 1 | ||||
-rw-r--r-- | version.h | 2 | ||||
-rw-r--r-- | vm_insnhelper.c | 1 |
4 files changed, 10 insertions, 1 deletions
@@ -1,3 +1,10 @@ +Wed Feb 25 17:30:10 2015 NAKAMURA Usaku <usa@ruby-lang.org> + + * class.c (clone_method): fixed missing assignment introduced by + previous commit. + + * vm_insnhelper.c (rb_vm_rewrite_cref_stack): ditto. + Wed Feb 25 15:07:01 2015 Kazuki Tsujimoto <kazuki@callcc.net> * vm_insnhelper.c (rb_vm_rewrite_cref_stack): copy nd_refinements @@ -131,6 +131,7 @@ clone_method(VALUE klass, ID mid, const rb_method_entry_t *me) newiseqval = rb_iseq_clone(me->def->body.iseq->self, klass); GetISeqPtr(newiseqval, iseq); rb_vm_rewrite_cref_stack(me->def->body.iseq->cref_stack, me->klass, klass, &new_cref); + iseq->cref_stack = new_cref; rb_add_method(klass, mid, VM_METHOD_TYPE_ISEQ, iseq, me->flag); RB_GC_GUARD(newiseqval); } @@ -1,6 +1,6 @@ #define RUBY_VERSION "2.0.0" #define RUBY_RELEASE_DATE "2015-02-25" -#define RUBY_PATCHLEVEL 642 +#define RUBY_PATCHLEVEL 643 #define RUBY_RELEASE_YEAR 2015 #define RUBY_RELEASE_MONTH 2 diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 707739e98f..9d107bbebd 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -303,6 +303,7 @@ rb_vm_rewrite_cref_stack(NODE *node, VALUE old_klass, VALUE new_klass, NODE **ne if (node->nd_clss == old_klass) { new_node = NEW_CREF(new_klass); COPY_CREF_OMOD(new_node, node); + new_node->nd_next = node->nd_next; *new_cref_ptr = new_node; return; } |