Bug #4289 » 0003-vm_method.c-ephemeral-classes-do-not-write-expire-ca.patch
vm_method.c | ||
---|---|---|
{
|
||
struct cache_entry *ent, *end;
|
||
/* ephemeral class does not write to cache */
|
||
if (FL_TEST(klass, RCLASS_EPHEMERAL))
|
||
return;
|
||
rb_vm_change_state();
|
||
if (!ruby_running)
|
||
... | ... | |
{
|
||
rb_method_entry_t *me = search_method(klass, id);
|
||
if (ruby_running) {
|
||
if (ruby_running && ! FL_TEST(klass, RCLASS_EPHEMERAL)) {
|
||
struct cache_entry *ent;
|
||
ent = cache + EXPR1(klass, id);
|
||
ent->klass = klass;
|
||