From f49ba1bd9cdbe2dbb9bb093bf0ac5cde506142c0 Mon Sep 17 00:00:00 2001 From: Damien George Date: Sat, 18 Jan 2014 17:52:41 +0000 Subject: Improve method lookup in mp_obj_class_lookup. Now searches both locals_dict and methods. Partly addresses Issue #145. --- py/runtime.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'py/runtime.c') diff --git a/py/runtime.c b/py/runtime.c index b9d6c841f..480da4129 100644 --- a/py/runtime.c +++ b/py/runtime.c @@ -820,8 +820,8 @@ void rt_load_method(mp_obj_t base, qstr attr, mp_obj_t *dest) { if (attr == MP_QSTR___next__ && type->iternext != NULL) { dest[0] = (mp_obj_t)&mp_builtin_next_obj; dest[1] = base; - } else { - // generic method lookup + } else if (type->load_attr == NULL) { + // generic method lookup if type didn't provide a specific one // this is a lookup in the object (ie not class or type) const mp_method_t *meth = type->methods; if (meth != NULL) { -- cgit v1.2.3