summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBerker Peksag <berker.peksag@gmail.com>2016-05-01 06:06:36 (GMT)
committerBerker Peksag <berker.peksag@gmail.com>2016-05-01 06:06:36 (GMT)
commitec766d3c159e0526db641505dbdf0a7f4271e5e4 (patch)
tree7e1d8b17849ac41bc715e1ea680ff9444fe1c9f5
parent8988ebf2a7a89620781feca39074f91469e7baf2 (diff)
downloadcpython-ec766d3c159e0526db641505dbdf0a7f4271e5e4.zip
cpython-ec766d3c159e0526db641505dbdf0a7f4271e5e4.tar.gz
cpython-ec766d3c159e0526db641505dbdf0a7f4271e5e4.tar.bz2
Issue #23960: Cleanup args and kwargs on error in PyErr_SetImportError
Patch by Ofer Schwarz.
-rw-r--r--Python/errors.c6
1 files 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;
}