diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | eval.c | 3 |
2 files changed, 7 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Mon Jul 10 09:29:12 2006 Nobuyoshi Nakada <[email protected]> + + * eval.c (rb_clear_cache_for_remove): clear entries for included + module. fixed: [ruby-core:08180] + Sun Jul 9 18:06:47 2006 Nobuyoshi Nakada <[email protected]> * lib/mkmf.rb (try_constant): fix for value 1 at cross compiling. @@ -365,7 +365,8 @@ rb_clear_cache_for_remove(VALUE klass, ID id) for (i=0; i<CACHE_SIZE; i++) { for (j=0; j<2; j++) { struct cache_entry *ent = cache[j]+i; - if (ent->origin == klass && ent->mid == id) { + if (ent->mid == id && + RCLASS(ent->origin)->m_tbl == RCLASS(klass)->m_tbl) { ent->mid = 0; } } |