summaryrefslogtreecommitdiff
path: root/proc.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-12-13 13:29:23 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-12-13 13:29:23 +0000
commitb71956d12b061613f8ef9dfe3f8a75e56dfa799d (patch)
tree11f455de1e876bfc478efee2052b0c8ed07e4279 /proc.c
parentf1f609bc22a8aea2de4a3d564147ffb73a9ac211 (diff)
proc.c, vm_method.c: fix super and alias
* proc.c (method_owner): return the class where alias is defined, not the class original method is defined. * vm_method.c (rb_method_entry_make, rb_alias): store the originally defined class in me. [Bug #7993] [Bug #7842] [Bug #9236] * vm_method.c (rb_method_entry_get_without_cache): cache included module but not iclass. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'proc.c')
-rw-r--r--proc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/proc.c b/proc.c
index bc8d35450b..f72b019684 100644
--- a/proc.c
+++ b/proc.c
@@ -1395,7 +1395,7 @@ method_owner(VALUE obj)
struct METHOD *data;
TypedData_Get_Struct(obj, struct METHOD, &method_data_type, data);
- return data->me->klass;
+ return data->rclass;
}
void