From: Jelle Zijlstra Date: Wed, 26 Apr 2023 15:50:19 +0000 (-0700) Subject: gh-103879: Fix refleak in super specialization (#103882) X-Git-Tag: v3.12.0b1~412 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6c4124d11ab731f3774e3454ded33df089bd317e;p=thirdparty%2FPython%2Fcpython.git gh-103879: Fix refleak in super specialization (#103882) --- diff --git a/Python/specialize.c b/Python/specialize.c index 9230087a78be..33a3c4561c7c 100644 --- a/Python/specialize.c +++ b/Python/specialize.c @@ -544,8 +544,10 @@ _Py_Specialize_LoadSuperAttr(PyObject *global_super, PyObject *class, PyObject * write_u32(cache->self_type_version, Py_TYPE(self)->tp_version_tag); write_obj(cache->method, res); // borrowed instr->op.code = LOAD_SUPER_ATTR_METHOD; + Py_DECREF(res); goto success; } + Py_DECREF(res); SPECIALIZATION_FAIL(LOAD_SUPER_ATTR, SPEC_FAIL_SUPER_NOT_METHOD); fail: