From: Raymond Hettinger Date: Fri, 11 Nov 2016 12:32:11 +0000 (-0800) Subject: merge X-Git-Tag: v3.7.0a1~2008 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b2b154374d921cccaf5de9faf633a6ae6e21892b;p=python merge --- diff --git a/Python/ceval.c b/Python/ceval.c index d08b316db4..fe562a8450 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -2468,8 +2468,9 @@ _PyEval_EvalFrameDefault(PyFrameObject *f, int throwflag) TARGET(STORE_DEREF) { PyObject *v = POP(); PyObject *cell = freevars[oparg]; - PyCell_Set(cell, v); - Py_DECREF(v); + PyObject *oldobj = PyCell_GET(cell); + PyCell_SET(cell, v); + Py_XDECREF(oldobj); DISPATCH(); }