colder          Thu Nov  6 01:07:22 2008 UTC

  Modified files:              (Branch: PHP_5_3)
    /php-src/ext/spl    spl_directory.c 
  Log:
  MFH: Fix #46421 (Take care about /)
  
http://cvs.php.net/viewvc.cgi/php-src/ext/spl/spl_directory.c?r1=1.45.2.27.2.23.2.34&r2=1.45.2.27.2.23.2.35&diff_format=u
Index: php-src/ext/spl/spl_directory.c
diff -u php-src/ext/spl/spl_directory.c:1.45.2.27.2.23.2.34 
php-src/ext/spl/spl_directory.c:1.45.2.27.2.23.2.35
--- php-src/ext/spl/spl_directory.c:1.45.2.27.2.23.2.34 Sun Nov  2 21:19:36 2008
+++ php-src/ext/spl/spl_directory.c     Thu Nov  6 01:07:22 2008
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: spl_directory.c,v 1.45.2.27.2.23.2.34 2008/11/02 21:19:36 felipe Exp $ 
*/
+/* $Id: spl_directory.c,v 1.45.2.27.2.23.2.35 2008/11/06 01:07:22 colder Exp $ 
*/
 
 #ifdef HAVE_CONFIG_H
 # include "config.h"
@@ -221,7 +221,7 @@
        intern->_path_len = strlen(path);
        intern->u.dir.dirp = php_stream_opendir(path, 
ENFORCE_SAFE_MODE|REPORT_ERRORS, NULL);
 
-       if (intern->_path_len && IS_SLASH_AT(path, intern->_path_len-1)) {
+       if (intern->_path_len > 1 && IS_SLASH_AT(path, intern->_path_len-1)) {
                intern->_path = estrndup(path, --intern->_path_len);
        } else {
                intern->_path = estrndup(path, intern->_path_len);
@@ -258,7 +258,7 @@
                zend_list_addref(Z_RESVAL_P(intern->u.file.zcontext));
        }
 
-       if (intern->file_name_len && IS_SLASH_AT(intern->file_name, 
intern->file_name_len-1)) {
+       if (intern->file_name_len > 1 && IS_SLASH_AT(intern->file_name, 
intern->file_name_len-1)) {
                intern->file_name_len--;
        }
 
@@ -349,7 +349,7 @@
        intern->file_name = use_copy ? estrndup(path, len) : path;
        intern->file_name_len = len;
 
-       while(IS_SLASH_AT(intern->file_name, intern->file_name_len-1)) {
+       while(IS_SLASH_AT(intern->file_name, intern->file_name_len-1) && 
intern->file_name_len > 1) {
                intern->file_name[intern->file_name_len-1] = 0;
                intern->file_name_len--;
        }
@@ -1965,7 +1965,7 @@
        if (spl_filesystem_file_open(intern, use_include_path, 0 TSRMLS_CC) == 
SUCCESS) {
                tmp_path_len = strlen(intern->u.file.stream->orig_path);
 
-               if (tmp_path_len && 
IS_SLASH_AT(intern->u.file.stream->orig_path, tmp_path_len-1)) {
+               if (tmp_path_len > 1 && 
IS_SLASH_AT(intern->u.file.stream->orig_path, tmp_path_len-1)) {
                        tmp_path_len--;
                }
 



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

Reply via email to