pollita         Tue Sep  9 17:12:50 2003 EDT

  Modified files:              
    /php-src/ext/ftp    ftp.c 
  Log:
  Fix Bug #25294 LIST/NLST can cause segfault because ftp->data not cleaned properly
  
Index: php-src/ext/ftp/ftp.c
diff -u php-src/ext/ftp/ftp.c:1.90 php-src/ext/ftp/ftp.c:1.91
--- php-src/ext/ftp/ftp.c:1.90  Sun Aug 31 17:07:01 2003
+++ php-src/ext/ftp/ftp.c       Tue Sep  9 17:12:49 2003
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: ftp.c,v 1.90 2003/08/31 21:07:01 iliaa Exp $ */
+/* $Id: ftp.c,v 1.91 2003/09/09 21:12:49 pollita Exp $ */
 
 #include "php.h"
 
@@ -486,6 +486,7 @@
 
        if (ftp->pwd) {
                efree(ftp->pwd);
+               ftp->pwd = NULL;
        }
 
        if (!ftp_putcmd(ftp, "CWD", dir)) {
@@ -509,6 +510,7 @@
 
        if (ftp->pwd) {
                efree(ftp->pwd);
+               ftp->pwd = NULL;
        }
 
        if (!ftp_putcmd(ftp, "CDUP", NULL)) {
@@ -1662,8 +1664,7 @@
 
        return ret;
 bail:
-       if (data)
-               ftp->data = data_close(ftp, data);
+       ftp->data = data_close(ftp, data);
        fclose(tmpfp);
        if (ret)
                efree(ret);

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

Reply via email to