diff Modules/posixmodule.c @ 43561:0015572d11bc

Fix the memory leak introduced in r58455. The buffer reference returned by 'et' need to be freed after usage.
author Alexandre Vassalotti <alexandre@peadrop.com>
date Sun, 14 Oct 2007 02:54:41 +0000
parents ac62eb267206
children 9fbf733a0639
line wrap: on
line diff
--- a/Modules/posixmodule.c	Sun Oct 14 02:05:51 2007 +0000
+++ b/Modules/posixmodule.c	Sun Oct 14 02:54:41 2007 +0000
@@ -2150,8 +2150,10 @@
         namebuf[len++] = SEP;
     strcpy(namebuf + len, "*.*");
 
-	if ((d = PyList_New(0)) == NULL)
+	if ((d = PyList_New(0)) == NULL) {
+        PyMem_Free(name);
         return NULL;
+    }
 
     rc = DosFindFirst(namebuf,         /* Wildcard Pattern to Match */
                       &hdir,           /* Handle to Use While Search Directory */
@@ -2192,6 +2194,7 @@
         } while (DosFindNext(hdir, &ep, sizeof(ep), &srchcnt) == NO_ERROR && srchcnt > 0);
     }
 
+    PyMem_Free(name);
     return d;
 #else