From e0dcb85b7d64153d1741698c04a6736c9669603a Mon Sep 17 00:00:00 2001 From: Zackery Spytz Date: Sun, 28 Apr 2019 06:58:52 -0600 Subject: bpo-36745: Fix a possible reference leak in PyObject_SetAttr() (GH-12993) https://bugs.python.org/issue36745 --- Objects/object.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Objects/object.c b/Objects/object.c index e7ec7ae..589bf36 100644 --- a/Objects/object.c +++ b/Objects/object.c @@ -1044,8 +1044,10 @@ PyObject_SetAttr(PyObject *v, PyObject *name, PyObject *value) } if (tp->tp_setattr != NULL) { const char *name_str = PyUnicode_AsUTF8(name); - if (name_str == NULL) + if (name_str == NULL) { + Py_DECREF(name); return -1; + } err = (*tp->tp_setattr)(v, (char *)name_str, value); Py_DECREF(name); return err; -- cgit v0.12