From: Guido van Rossum Date: Tue, 17 Jan 1995 16:35:13 +0000 (+0000) Subject: fix strobject() behavior X-Git-Tag: v1.2b2~10 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=32b582b953f5859de325496df1da9731234b17fa;p=thirdparty%2FPython%2Fcpython.git fix strobject() behavior --- diff --git a/Objects/object.c b/Objects/object.c index be3cce7e8099..63c55ce2ad72 100644 --- a/Objects/object.c +++ b/Objects/object.c @@ -181,11 +181,13 @@ strobject(v) INCREF(v); return v; } + else if (v->ob_type->tp_str != NULL) + return (*v->ob_type->tp_str)(v); else { - object *func = getattr(v, "__str__"); + object *func; object *args; object *res; - if (func == NULL) { + if (!is_instanceobject(v) || (func = getattr(v, "__str__")) == NULL) { err_clear(); return reprobject(v); }