diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-01-08 07:02:26 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2002-01-08 07:02:26 +0000 |
commit | 1a101d775a8c42f36c5a16978914ae2ac070e8a4 (patch) | |
tree | c63d0e66d2eecf6a07d782bf9a26154dbe92b62f /eval.c | |
parent | dcbb422253ebd766d44810ab17b8705d04297ccf (diff) | |
download | ruby-1a101d775a8c42f36c5a16978914ae2ac070e8a4.tar.gz |
* eval.c (rb_add_method): clear replaced method from the cache.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -229,7 +229,8 @@ rb_add_method(klass, mid, node, noex) } if (OBJ_FROZEN(klass)) rb_error_frozen("class/module"); body = NEW_METHOD(node, noex); - st_insert(RCLASS(klass)->m_tbl, mid, body); + if (st_insert(RCLASS(klass)->m_tbl, mid, body)) + rb_clear_cache_by_id(mid); } static NODE* |