summaryrefslogtreecommitdiff
path: root/main/safe_mode.c
diff options
context:
space:
mode:
Diffstat (limited to 'main/safe_mode.c')
-rw-r--r--main/safe_mode.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/main/safe_mode.c b/main/safe_mode.c
index b017dd0258..eb942de2c8 100644
--- a/main/safe_mode.c
+++ b/main/safe_mode.c
@@ -103,7 +103,11 @@ PHPAPI int php_checkuid(const char *filename, char *fopen_mode, int mode)
} else { /* CHECKUID_ALLOW_ONLY_DIR */
s = strrchr(filename, DEFAULT_SLASH);
- if (s) {
+ if (s == filename) {
+ /* root dir */
+ path[0] = DEFAULT_SLASH;
+ path[1] = '\0';
+ } else if (s) {
*s = '\0';
VCWD_REALPATH(filename, path);
*s = DEFAULT_SLASH;