cvs: php-src(PHP_4_4) / NEWS /ext/ftp ftp.c
| From: | Nuno Lopes | Date: | Fri, 01 Dec 2006 17:11:07 +0000 |
| Subject: | cvs: php-src(PHP_4_4) / NEWS /ext/ftp ftp.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-41818@lists.php.net to get a copy of this message | ||
nlopess Fri Dec 1 17:11:07 2006 UTC
Modified files: (Branch: PHP_4_4)
/php-src NEWS
/php-src/ext/ftp ftp.c
Log:
MFH: fix bug #39458
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.1247.2.920.2.177&r2=1.1247.2.920.2.178&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.1247.2.920.2.177 php-src/NEWS:1.1247.2.920.2.178
--- php-src/NEWS:1.1247.2.920.2.177 Tue Nov 28 11:41:35 2006
+++ php-src/NEWS Fri Dec 1 17:11:07 2006
@@ -8,6 +8,7 @@
- Fixed bug #39653 (ext/dba doesn't check for db-4.5 and db-4.4 when db4
support is enabled). (Tony)
- Fixed bug #39583 (ftp_put() does not change transfer mode to ASCII). (Tony)
+- Fixed bug #39458 (ftp_nlist() returns false on empty dirs). (Nuno)
- Fixed bug #39354 (Allow building of curl extension against libcurl
7.16.0). (Ilia)
- Fixed bug #39034 (curl_exec() with return transfer returns TRUE on empty
http://cvs.php.net/viewvc.cgi/php-src/ext/ftp/ftp.c?r1=1.68.2.22.2.2&r2=1.68.2.22.2.3&diff_format=u
Index: php-src/ext/ftp/ftp.c
diff -u php-src/ext/ftp/ftp.c:1.68.2.22.2.2 php-src/ext/ftp/ftp.c:1.68.2.22.2.3
--- php-src/ext/ftp/ftp.c:1.68.2.22.2.2 Sun Jan 1 13:46:52 2006
+++ php-src/ext/ftp/ftp.c Fri Dec 1 17:11:07 2006
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: ftp.c,v 1.68.2.22.2.2 2006/01/01 13:46:52 sniper Exp $ */
+/* $Id: ftp.c,v 1.68.2.22.2.3 2006/12/01 17:11:07 nlopess Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -1498,9 +1498,14 @@
if (!ftp_putcmd(ftp, cmd, path))
goto bail;
- if (!ftp_getresp(ftp) || (ftp->resp != 150 && ftp->resp != 125))
+ if (!ftp_getresp(ftp) || (ftp->resp != 150 && ftp->resp != 125 &&
ftp->resp != 226))
goto bail;
+ /* some servers don't open a ftp-data connection if the directory is empty */
+ if (ftp->resp == 226) {
+ return ecalloc(1, sizeof(char**));
+ }
+
/* pull data buffer into tmpfile */
if ((data = data_accept(data, ftp)) == NULL)
goto bail;