From e80b29b5b62b264d018260dd19ae9b5ba46d68d4 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Fri, 16 Mar 2012 18:45:31 -0500 Subject: cleanup Ellipsis and NotImplemented strings after we're done --- Modules/_pickle.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Modules/_pickle.c b/Modules/_pickle.c index 9410e52..5ba5599 100644 --- a/Modules/_pickle.c +++ b/Modules/_pickle.c @@ -2815,18 +2815,24 @@ static int save_ellipsis(PicklerObject *self, PyObject *obj) { PyObject *str = PyUnicode_FromString("Ellipsis"); + int res; if (str == NULL) return -1; - return save_global(self, Py_Ellipsis, str); + res = save_global(self, Py_Ellipsis, str); + Py_DECREF(str); + return res; } static int save_notimplemented(PicklerObject *self, PyObject *obj) { PyObject *str = PyUnicode_FromString("NotImplemented"); + int res; if (str == NULL) return -1; - return save_global(self, Py_NotImplemented, str); + res = save_global(self, Py_NotImplemented, str); + Py_DECREF(str); + return res; } static int -- cgit v0.12