diff options
author | shugo <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-06-29 05:52:38 +0000 |
---|---|---|
committer | shugo <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-06-29 05:52:38 +0000 |
commit | 8803c6016fa211b40d63bc1a7e6ffa32ac4a75c4 (patch) | |
tree | 3352639c61606106f91d47aacf8d1d0e505415de /eval.c | |
parent | 6cb284a2cf00ff9f849c6300f65e006a9530d17a (diff) | |
download | ruby-8803c6016fa211b40d63bc1a7e6ffa32ac4a75c4.tar.gz |
* eval.c (add_activated_refinement): should not include the original
class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -1274,7 +1274,7 @@ add_activated_refinement(VALUE activated_refinements, c = iclass = rb_include_class_new(refinement, superclass); RCLASS_REFINED_CLASS(c) = klass; refinement = RCLASS_SUPER(refinement); - while (refinement) { + while (refinement && refinement != klass) { FL_SET(refinement, RMODULE_IS_OVERLAID); c = RCLASS_SET_SUPER(c, rb_include_class_new(refinement, RCLASS_SUPER(c))); RCLASS_REFINED_CLASS(c) = klass; |