From ec766d3c159e0526db641505dbdf0a7f4271e5e4 Mon Sep 17 00:00:00 2001 From: Berker Peksag Date: Sun, 1 May 2016 09:06:36 +0300 Subject: Issue #23960: Cleanup args and kwargs on error in PyErr_SetImportError Patch by Ofer Schwarz. --- Python/errors.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Python/errors.c b/Python/errors.c index 47d7c4b..e151cab 100644 --- a/Python/errors.c +++ b/Python/errors.c @@ -727,9 +727,9 @@ PyErr_SetImportError(PyObject *msg, PyObject *name, PyObject *path) PyTuple_SET_ITEM(args, 0, msg); if (PyDict_SetItemString(kwargs, "name", name) < 0) - return NULL; + goto done; if (PyDict_SetItemString(kwargs, "path", path) < 0) - return NULL; + goto done; error = PyObject_Call(PyExc_ImportError, args, kwargs); if (error != NULL) { @@ -737,9 +737,9 @@ PyErr_SetImportError(PyObject *msg, PyObject *name, PyObject *path) Py_DECREF(error); } +done: Py_DECREF(args); Py_DECREF(kwargs); - return NULL; } -- cgit v0.12