iliaa           Wed Jun  9 10:18:14 2004 EDT

  Modified files:              
    /php-src/win32      readdir.c 
  Log:
  Fixed memory leak on error in win32's opendir() emulation. (Patch by Wez)
  
  
  
http://cvs.php.net/diff.php/php-src/win32/readdir.c?r1=1.10&r2=1.11&ty=u
Index: php-src/win32/readdir.c
diff -u php-src/win32/readdir.c:1.10 php-src/win32/readdir.c:1.11
--- php-src/win32/readdir.c:1.10        Mon Jan 27 15:39:30 2003
+++ php-src/win32/readdir.c     Wed Jun  9 10:18:14 2004
@@ -37,14 +37,17 @@
        dp = (DIR *) malloc(sizeof(DIR));
        dp->offset = 0;
        dp->finished = 0;
-       dp->dir = strdup(dir);
 
        if ((handle = _findfirst(filespec, &(dp->fileinfo))) < 0) {
-               if (errno == ENOENT)
+               if (errno == ENOENT) {
                        dp->finished = 1;
-               else
+               } else {
+                       free(dp);
+                       free(filespec);
                        return NULL;
+               }
        }
+       dp->dir = strdup(dir);
        dp->handle = handle;
        free(filespec);
 

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to