bpo-39831: Fix a reference leak in PyErr_WarnEx(). (GH-18750)

This commit is contained in:
Serhiy Storchaka 2020-03-02 22:05:08 +02:00 committed by GitHub
parent 89aa4694fc
commit 2d2f85517f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 2 deletions

View File

@ -859,11 +859,11 @@ setup_context(Py_ssize_t stack_level, PyObject **filename, int *lineno,
int rc;
if (PyErr_Occurred()) {
return 0;
goto handle_error;
}
*registry = PyDict_New();
if (*registry == NULL)
return 0;
goto handle_error;
rc = _PyDict_SetItemId(globals, &PyId___warningregistry__, *registry);
if (rc < 0)
@ -893,6 +893,7 @@ setup_context(Py_ssize_t stack_level, PyObject **filename, int *lineno,
dangling reference. */
Py_XDECREF(*registry);
Py_XDECREF(*module);
Py_XDECREF(*filename);
return 0;
}