summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin Applegate <70449145+Legoclones@users.noreply.github.com>2024-06-28 21:43:45 (GMT)
committerGitHub <noreply@github.com>2024-06-28 21:43:45 (GMT)
commit92893fd8dc803ed7cdde55d29d25f84ccb5e3ef0 (patch)
treee7c08f62448d0a3af3a6b78d810ed9a2e753cde8
parente6543daf12051e9c660a5c0437683e8d2706a3c7 (diff)
downloadcpython-92893fd8dc803ed7cdde55d29d25f84ccb5e3ef0.zip
cpython-92893fd8dc803ed7cdde55d29d25f84ccb5e3ef0.tar.gz
cpython-92893fd8dc803ed7cdde55d29d25f84ccb5e3ef0.tar.bz2
gh-121137: Add missing Py_DECREF calls for ADDITEMS opcode of _pickle.c (#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
-rw-r--r--Modules/_pickle.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/Modules/_pickle.c b/Modules/_pickle.c
index 21be88a..4a2191d 100644
--- a/Modules/_pickle.c
+++ b/Modules/_pickle.c
@@ -6524,11 +6524,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;