From: Neal Norwitz Date: Sun, 11 Dec 2005 20:08:33 +0000 (+0000) Subject: SF #1370197, memory leak - ast_error_finish (in error conditions). X-Git-Tag: v2.5a0~1059 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8ad64aaacc22d68d6d93c3c12f7e67e9962de09b;p=thirdparty%2FPython%2Fcpython.git SF #1370197, memory leak - ast_error_finish (in error conditions). --- diff --git a/Python/ast.c b/Python/ast.c index 2250683a3db9..89ec2178f246 100644 --- a/Python/ast.c +++ b/Python/ast.c @@ -179,8 +179,10 @@ ast_error_finish(const char *filename) return; Py_INCREF(errstr); lineno = PyInt_AsLong(PyTuple_GetItem(value, 1)); - if (lineno == -1) + if (lineno == -1) { + Py_DECREF(errstr); return; + } Py_DECREF(value); loc = PyErr_ProgramText(filename, lineno); @@ -190,8 +192,10 @@ ast_error_finish(const char *filename) } tmp = Py_BuildValue("(ziOO)", filename, lineno, Py_None, loc); Py_DECREF(loc); - if (!tmp) + if (!tmp) { + Py_DECREF(errstr); return; + } value = Py_BuildValue("(OO)", errstr, tmp); Py_DECREF(errstr); Py_DECREF(tmp);