From: Christian Heimes Date: Mon, 10 Sep 2012 15:00:30 +0000 (+0200) Subject: Fixed memory leak in error branch of object_repr which may leak a reference to mod... X-Git-Tag: v3.3.1rc1~818^2^2~101 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=76c082911b69c5f3bb2bee9aadef0a0ea9162eac;p=python Fixed memory leak in error branch of object_repr which may leak a reference to mod when type_qualname returns NULL. CID 715371 --- 76c082911b69c5f3bb2bee9aadef0a0ea9162eac diff --cc Objects/typeobject.c index f51700e034,0fc0ad38e8..88cca93dd1 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@@ -3129,9 -2924,11 +3129,11 @@@ object_repr(PyObject *self Py_DECREF(mod); mod = NULL; } - name = type_name(type, NULL); + name = type_qualname(type, NULL); - if (name == NULL) + if (name == NULL) { + Py_XDECREF(mod); return NULL; + } if (mod != NULL && PyUnicode_CompareWithASCIIString(mod, "builtins")) rtn = PyUnicode_FromFormat("<%U.%U object at %p>", mod, name, self); else