]> granicus.if.org Git - python/commitdiff
Fixed memory leak in error branch of formatfloat(). CID 719687
authorChristian Heimes <christian@cheimes.de>
Mon, 10 Sep 2012 09:48:41 +0000 (11:48 +0200)
committerChristian Heimes <christian@cheimes.de>
Mon, 10 Sep 2012 09:48:41 +0000 (11:48 +0200)
Objects/unicodeobject.c

index 6d49806487fe3dff8eb366ceeb108f9ade303742..34a934d8cd5bd4be140ed49437bdd360c86772fc 100644 (file)
@@ -13237,8 +13237,10 @@ formatfloat(PyObject *v, int flags, int prec, int type,
         return -1;
     len = strlen(p);
     if (writer) {
-        if (_PyUnicodeWriter_Prepare(writer, len, 127) == -1)
+        if (_PyUnicodeWriter_Prepare(writer, len, 127) == -1) {
+            PyMem_Free(p);
             return -1;
+        }
         unicode_write_cstr(writer->buffer, writer->pos, p, len);
         writer->pos += len;
     }