From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Tue, 14 Oct 2025 13:40:30 +0000 (+0200) Subject: [3.14] GH-140058: Clear key and value if `PyTuple_New` fails in `dictiter_iternextite... X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2142f4efcffcf19ce776d2e27e9781c300e852ec;p=thirdparty%2FPython%2Fcpython.git [3.14] GH-140058: Clear key and value if `PyTuple_New` fails in `dictiter_iternextitem` (GH-140059) (#140107) GH-140058: Clear key and value if `PyTuple_New` fails in `dictiter_iternextitem` (GH-140059) (cherry picked from commit ded59f7e8e93274488584574ff2336a98bc4eff6) Co-authored-by: Sergey Miryanov --- diff --git a/Objects/dictobject.c b/Objects/dictobject.c index d669f8421c47..80a44a87be4c 100644 --- a/Objects/dictobject.c +++ b/Objects/dictobject.c @@ -5670,8 +5670,11 @@ dictiter_iternextitem(PyObject *self) } else { result = PyTuple_New(2); - if (result == NULL) + if (result == NULL) { + Py_DECREF(key); + Py_DECREF(value); return NULL; + } PyTuple_SET_ITEM(result, 0, key); PyTuple_SET_ITEM(result, 1, value); }