]> granicus.if.org Git - php/commitdiff
Fix another missing opened_path assignment
authorZeev Suraski <zeev@php.net>
Mon, 10 Apr 2000 22:50:32 +0000 (22:50 +0000)
committerZeev Suraski <zeev@php.net>
Mon, 10 Apr 2000 22:50:32 +0000 (22:50 +0000)
main/fopen_wrappers.c

index 116985675ea3a34c41834a1fb2dea38866f37df3..64d59be820933a92bc2dc69bfe5e67a9e79f8f63 100644 (file)
@@ -369,15 +369,23 @@ PHPAPI FILE *php_fopen_with_path(char *filename, char *mode, char *path, char **
                        }
                        return fp;
                } else {
-                       if (php_check_open_basedir(filename)) return NULL;
-                       return PHP_FOPEN(filename, mode);
+                       if (php_check_open_basedir(filename)) {
+                               return NULL;
+                       }
+                       fp = PHP_FOPEN(filename, mode);
+                       if (fp && opened_path) {
+                               *opened_path = expand_filepath(filename);
+                       }
+                       return fp;
                }
        }
        if (!path || (path && !*path)) {
                if (PG(safe_mode) && (!php_checkuid(filename, cm))) {
                        return NULL;
                }
-               if (php_check_open_basedir(filename)) return NULL;
+               if (php_check_open_basedir(filename)) {
+                       return NULL;
+               }
                fp = PHP_FOPEN(filename, mode);
                if (fp && opened_path) {
                        *opened_path = strdup(filename);