[Python-checkins] cpython: Fix memory leak in pyexpat PyUnknownEncodingHandler

christian.heimes python-checkins at python.org
Sat Jun 29 20:43:22 CEST 2013


http://hg.python.org/cpython/rev/bd0834b59828
changeset:   84375:bd0834b59828
user:        Christian Heimes <christian at cheimes.de>
date:        Sat Jun 29 20:43:13 2013 +0200
summary:
  Fix memory leak in pyexpat PyUnknownEncodingHandler
CID 1040367 (#1 of 1): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable u going out of scope leaks the storage it points to.

files:
  Modules/pyexpat.c |  4 +++-
  1 files changed, 3 insertions(+), 1 deletions(-)


diff --git a/Modules/pyexpat.c b/Modules/pyexpat.c
--- a/Modules/pyexpat.c
+++ b/Modules/pyexpat.c
@@ -1128,8 +1128,10 @@
     }
 
     u = PyUnicode_Decode((char*) template_buffer, 256, name, "replace");
-    if (u == NULL || PyUnicode_READY(u))
+    if (u == NULL || PyUnicode_READY(u)) {
+        Py_DECREF(u);
         return XML_STATUS_ERROR;
+    }
 
     if (PyUnicode_GET_LENGTH(u) != 256) {
         Py_DECREF(u);

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list