From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Wed, 27 Jan 2021 09:40:31 +0000 (-0800) Subject: bpo-43033: Fix the handling of PyObject_SetAttrString() in _zoneinfo.c (GH-24345... X-Git-Tag: v3.9.2rc1~35 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cb77c5e1ddd9328e4706f8fdf893aa6bf697942c;p=thirdparty%2FPython%2Fcpython.git bpo-43033: Fix the handling of PyObject_SetAttrString() in _zoneinfo.c (GH-24345) (GH-24349) (cherry picked from commit 5327f370344a627f1578d8183d197feb286371c6) Co-authored-by: Zackery Spytz --- diff --git a/Modules/_zoneinfo.c b/Modules/_zoneinfo.c index d87a20100a22..0913860a4d49 100644 --- a/Modules/_zoneinfo.c +++ b/Modules/_zoneinfo.c @@ -2530,7 +2530,11 @@ zoneinfo_init_subclass(PyTypeObject *cls, PyObject *args, PyObject **kwargs) return NULL; } - PyObject_SetAttrString((PyObject *)cls, "_weak_cache", weak_cache); + if (PyObject_SetAttrString((PyObject *)cls, "_weak_cache", + weak_cache) < 0) { + Py_DECREF(weak_cache); + return NULL; + } Py_DECREF(weak_cache); Py_RETURN_NONE; }