diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2012-02-15 01:51:43 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2012-02-15 01:51:43 (GMT) |
commit | 37784ba5c08aed9a3153eb5a37014e59ee3769fe (patch) | |
tree | 1f7126686104362766ce69b0261d2603448fd34c | |
parent | f5f1fe0cb5dedf37098622de318656003dc5230d (diff) | |
download | cpython-37784ba5c08aed9a3153eb5a37014e59ee3769fe.zip cpython-37784ba5c08aed9a3153eb5a37014e59ee3769fe.tar.gz cpython-37784ba5c08aed9a3153eb5a37014e59ee3769fe.tar.bz2 |
Issue #13020: Fix a reference leak when allocating a structsequence object fails.
Patch by Suman Saha.
-rw-r--r-- | Misc/NEWS | 3 | ||||
-rw-r--r-- | Objects/structseq.c | 1 |
2 files changed, 4 insertions, 0 deletions
@@ -10,6 +10,9 @@ What's New in Python 3.2.3? Core and Builtins ----------------- +- Issue #13020: Fix a reference leak when allocating a structsequence object + fails. Patch by Suman Saha. + - Issue #13908: Ready types returned from PyType_FromSpec. - Issue #11235: Fix OverflowError when trying to import a source file whose diff --git a/Objects/structseq.c b/Objects/structseq.c index ef17f49..ac4f980 100644 --- a/Objects/structseq.c +++ b/Objects/structseq.c @@ -129,6 +129,7 @@ structseq_new(PyTypeObject *type, PyObject *args, PyObject *kwds) res = (PyStructSequence*) PyStructSequence_New(type); if (res == NULL) { + Py_DECREF(arg); return NULL; } for (i = 0; i < len; ++i) { |