diff options
author | Erlend E. Aasland <erlend@python.org> | 2024-03-04 09:46:18 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-04 09:46:18 (GMT) |
commit | 17c4849981905fb1c9bfbb2b963b6ee12e3efb2c (patch) | |
tree | 06cae8c26c168c4801714b9da77a70b722b2395b | |
parent | 1dce0073da2e48f3cd387f4d57b14d6813bb8a85 (diff) | |
download | cpython-17c4849981905fb1c9bfbb2b963b6ee12e3efb2c.zip cpython-17c4849981905fb1c9bfbb2b963b6ee12e3efb2c.tar.gz cpython-17c4849981905fb1c9bfbb2b963b6ee12e3efb2c.tar.bz2 |
gh-116296: Fix refleak in reduce_newobj() corner case (#116297)
Co-authored-by: Brandt Bucher <brandtbucher@microsoft.com>
-rw-r--r-- | Misc/NEWS.d/next/Core and Builtins/2024-03-04-10-19-51.gh-issue-116296.gvtxyU.rst | 1 | ||||
-rw-r--r-- | Objects/typeobject.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/Misc/NEWS.d/next/Core and Builtins/2024-03-04-10-19-51.gh-issue-116296.gvtxyU.rst b/Misc/NEWS.d/next/Core and Builtins/2024-03-04-10-19-51.gh-issue-116296.gvtxyU.rst new file mode 100644 index 0000000..0781e92 --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2024-03-04-10-19-51.gh-issue-116296.gvtxyU.rst @@ -0,0 +1 @@ +Fix possible refleak in :meth:`!object.__reduce__` internal error handling. diff --git a/Objects/typeobject.c b/Objects/typeobject.c index fe3b7b8..181d032 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -6549,6 +6549,7 @@ reduce_newobj(PyObject *obj) } else { /* args == NULL */ + Py_DECREF(copyreg); Py_DECREF(kwargs); PyErr_BadInternalCall(); return NULL; |