From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Fri, 28 Jun 2024 23:17:51 +0000 (+0200) Subject: [3.12] gh-121137: Add missing Py_DECREF calls for ADDITEMS opcode of _pickle.c (GH... X-Git-Tag: v3.12.5~156 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=5c06b34665c4538f7142a71ecc4cc4a0d82d2653;p=thirdparty%2FPython%2Fcpython.git [3.12] gh-121137: Add missing Py_DECREF calls for ADDITEMS opcode of _pickle.c (GH-121136) (#121140) gh-121137: Add missing Py_DECREF calls for ADDITEMS opcode of _pickle.c (GH-121136) PyObject_GetAttr returns a new reference, but this reference is never decremented using Py_DECREF, so Py_DECREF calls to this referece are added (cherry picked from commit 92893fd8dc803ed7cdde55d29d25f84ccb5e3ef0) Co-authored-by: Justin Applegate <70449145+Legoclones@users.noreply.github.com> --- diff --git a/Modules/_pickle.c b/Modules/_pickle.c index 2bf9977f0b77..52e9e6b4b661 100644 --- a/Modules/_pickle.c +++ b/Modules/_pickle.c @@ -6623,11 +6623,13 @@ load_additems(PickleState *state, UnpicklerObject *self) if (result == NULL) { Pdata_clear(self->stack, i + 1); Py_SET_SIZE(self->stack, mark); + Py_DECREF(add_func); return -1; } Py_DECREF(result); } Py_SET_SIZE(self->stack, mark); + Py_DECREF(add_func); } return 0;