]> granicus.if.org Git - php/commitdiff
- Fix #35998 (getPathname() method always returns unix style filenames)
authorMarcus Boerger <helly@php.net>
Fri, 13 Jan 2006 19:35:27 +0000 (19:35 +0000)
committerMarcus Boerger <helly@php.net>
Fri, 13 Jan 2006 19:35:27 +0000 (19:35 +0000)
ext/spl/spl_directory.c

index 9041f0288ff54836c80aa0de0226aa1721fca876..494602d67158e76e674d3205b7c0c3ddd4c10d3d 100755 (executable)
@@ -162,7 +162,7 @@ static inline void spl_filesystem_object_get_file_name(spl_filesystem_object *in
                        php_error_docref(NULL TSRMLS_CC, E_ERROR, "Object not initialized");
                        break;
                case SPL_FS_DIR:
-                       intern->file_name_len = spprintf(&intern->file_name, 0, "%s/%s", intern->path, intern->u.dir.entry.d_name);
+                       intern->file_name_len = spprintf(&intern->file_name, 0, "%s%c%s", intern->path, DEFAULT_SLASH, intern->u.dir.entry.d_name);
                        break;
                }
        }
@@ -852,7 +852,7 @@ SPL_METHOD(RecursiveDirectoryIterator, getChildren)
        subdir = (spl_filesystem_object*)zend_object_store_get_object(return_value TSRMLS_CC);
        if (subdir) {
                if (intern->u.dir.sub_path && intern->u.dir.sub_path[0]) {
-                       subdir->u.dir.sub_path_len = spprintf(&subdir->u.dir.sub_path, 0, "%s/%s", intern->u.dir.sub_path, intern->u.dir.entry.d_name);
+                       subdir->u.dir.sub_path_len = spprintf(&subdir->u.dir.sub_path, 0, "%s%c%s", intern->u.dir.sub_path, DEFAULT_SLASH, intern->u.dir.entry.d_name);
                } else {
                        subdir->u.dir.sub_path_len = strlen(intern->u.dir.entry.d_name);
                        subdir->u.dir.sub_path = estrndup(intern->u.dir.entry.d_name, subdir->u.dir.sub_path_len);
@@ -885,7 +885,7 @@ SPL_METHOD(RecursiveDirectoryIterator, getSubPathname)
        int len;
 
        if (intern->u.dir.sub_path) {
-               len = spprintf(&sub_name, 0, "%s/%s", intern->u.dir.sub_path, intern->u.dir.entry.d_name);
+               len = spprintf(&sub_name, 0, "%s%c%s", intern->u.dir.sub_path, DEFAULT_SLASH, intern->u.dir.entry.d_name);
                RETURN_STRINGL(sub_name, len, 0);
        } else {
                RETURN_STRING(intern->u.dir.entry.d_name, 1);
@@ -907,7 +907,7 @@ SPL_METHOD(RecursiveDirectoryIterator, getSubPathInfo)
        }
 
        if (intern->u.dir.sub_path) {
-               len = spprintf(&sub_name, 0, "%s/%s", intern->u.dir.sub_path, intern->u.dir.entry.d_name);
+               len = spprintf(&sub_name, 0, "%s%c%s", intern->u.dir.sub_path, DEFAULT_SLASH, intern->u.dir.entry.d_name);
                spl_filesystem_object_create_info(intern, sub_name, len, 0, ce, return_value TSRMLS_CC);
        } else {
                spl_filesystem_object_create_info(intern, intern->path, intern->path_len, 1, ce, return_value TSRMLS_CC);