From 2142f4efcffcf19ce776d2e27e9781c300e852ec Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Tue, 14 Oct 2025 15:40:30 +0200 Subject: [PATCH] [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 --- Objects/dictobject.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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); } -- 2.47.3