summaryrefslogtreecommitdiff
path: root/class.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-06-04 02:30:59 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-06-04 02:30:59 +0000
commit40930b71445a08d0d9a16681ba20cb8a68a7e3a0 (patch)
tree3bc683f747ea09dfded5f628aabc9c8a2d002dac /class.c
parenta8009c20d94aef6ee73b9b3b9ba2877d46987012 (diff)
* class.c (check_mix_method_i, do_mix_method_i): not mix methods
renamed as nil. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'class.c')
-rw-r--r--class.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/class.c b/class.c
index 2a2b3ef131..e7c42daad7 100644
--- a/class.c
+++ b/class.c
@@ -745,6 +745,7 @@ check_mix_method_i(st_data_t key, st_data_t value, st_data_t arg)
st_data_t alias;
if (aliasing && st_lookup(aliasing, ID2SYM(id), &alias)) {
+ if (NIL_P(alias)) return ST_CONTINUE;
id = rb_to_id(alias);
}
if (st_lookup(argp->mtbl, id, NULL)) {
@@ -763,6 +764,7 @@ do_mix_method_i(st_data_t key, st_data_t value, st_data_t arg)
st_data_t old, alias;
if (aliasing && st_lookup(aliasing, ID2SYM(id), &alias)) {
+ if (NIL_P(alias)) return ST_CONTINUE;
id = rb_to_id(alias);
}
if (st_lookup(argp->mtbl, id, &old)) {