diff options
Diffstat (limited to 'Objects/object.c')
-rw-r--r-- | Objects/object.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/Objects/object.c b/Objects/object.c index d7110ae..1643ec6 100644 --- a/Objects/object.c +++ b/Objects/object.c @@ -177,7 +177,7 @@ strobject(v) { if (v == NULL) return newstringobject("<NULL>"); - if (is_stringobject(v)) { + else if (is_stringobject(v)) { INCREF(v); return v; } @@ -185,19 +185,13 @@ strobject(v) return (*v->ob_type->tp_str)(v); else { object *func; - object *args; object *res; - if (!is_instanceobject(v) || (func = getattr(v, "__str__")) == NULL) { + if (!is_instanceobject(v) || + (func = getattr(v, "__str__")) == NULL) { err_clear(); return reprobject(v); } - args = newtupleobject(0); - if (args == NULL) - res = NULL; - else { - res = call_object(func, args); - DECREF(args); - } + res = call_object(func, (object *)NULL); DECREF(func); return res; } |