variable.c, vm_method.c: pin down
* variable.c (rb_alias_variable): ensure pinned down. * vm_method.c (rb_method_entry_make): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
bf905503a0
commit
6b9b85318a
@ -873,6 +873,7 @@ rb_alias_variable(ID name1, ID name2)
|
|||||||
|
|
||||||
entry2 = rb_global_entry(name2);
|
entry2 = rb_global_entry(name2);
|
||||||
if (!st_lookup(rb_global_tbl, (st_data_t)name1, &data1)) {
|
if (!st_lookup(rb_global_tbl, (st_data_t)name1, &data1)) {
|
||||||
|
name1 = SYM2ID(ID2SYM(name1));
|
||||||
entry1 = ALLOC(struct global_entry);
|
entry1 = ALLOC(struct global_entry);
|
||||||
entry1->id = name1;
|
entry1->id = name1;
|
||||||
st_add_direct(rb_global_tbl, name1, (st_data_t)entry1);
|
st_add_direct(rb_global_tbl, name1, (st_data_t)entry1);
|
||||||
|
@ -333,6 +333,8 @@ rb_method_entry_make(VALUE klass, ID mid, rb_method_type_t type,
|
|||||||
rb_unlink_method_entry(old_me);
|
rb_unlink_method_entry(old_me);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mid = SYM2ID(ID2SYM(mid));
|
||||||
|
|
||||||
me = ALLOC(rb_method_entry_t);
|
me = ALLOC(rb_method_entry_t);
|
||||||
|
|
||||||
rb_clear_method_cache_by_class(klass);
|
rb_clear_method_cache_by_class(klass);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user