From e105f980460131d192d955fca0df474bcf1c642c Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Wed, 23 Jan 2008 20:09:39 +0000 Subject: Fix two crashers (borrowed_ref_[34].py from the trunk). --- Python/ceval.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'Python/ceval.c') diff --git a/Python/ceval.c b/Python/ceval.c index 4f6b731f2b..06d524b275 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -2036,6 +2036,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) "__import__ not found"); break; } + Py_INCREF(x); v = POP(); u = TOP(); if (PyInt_AsLong(u) != -1 || PyErr_Occurred()) @@ -2057,11 +2058,14 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag) Py_DECREF(u); if (w == NULL) { u = POP(); + Py_DECREF(x); x = NULL; break; } READ_TIMESTAMP(intr0); - x = PyEval_CallObject(x, w); + v = x; + x = PyEval_CallObject(v, w); + Py_DECREF(v); READ_TIMESTAMP(intr1); Py_DECREF(w); SET_TOP(x); -- cgit v1.2.1