diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-08-01 00:46:18 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-08-01 00:46:18 +0000 |
commit | a35c3cf34137c8a58a35d7e543af9cfa9d4725f6 (patch) | |
tree | 4d08177055054931b857d15c78f4f8871ac2800d | |
parent | 572b8b37498a875382220d957d1b4285ae046eaf (diff) |
* class.c (rb_include_module): don't clear the method cache if the
included module has no method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | class.c | 3 |
2 files changed, 7 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Sun Aug 1 09:44:25 2010 Tanaka Akira <akr@fsij.org> + + * class.c (rb_include_module): don't clear the method cache if the + included module has no method. + Sun Aug 1 09:21:32 2010 Tanaka Akira <akr@fsij.org> * ext/pathname/pathname.c (path_sub): Pathname#sub translated @@ -659,7 +659,8 @@ rb_include_module(VALUE klass, VALUE module) } } c = RCLASS_SUPER(c) = include_class_new(module, RCLASS_SUPER(c)); - changed = 1; + if (RMODULE_M_TBL(module) && RMODULE_M_TBL(module)->num_entries) + changed = 1; skip: module = RCLASS_SUPER(module); } |