summaryrefslogtreecommitdiff
path: root/TSRM/tsrm_virtual_cwd.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2008-08-18 10:28:00 +0000
committerDmitry Stogov <dmitry@php.net>2008-08-18 10:28:00 +0000
commit6552f469e546269e14f618000b052c6f0e5258ae (patch)
tree125274414eb265627b02351180ab102107571ebb /TSRM/tsrm_virtual_cwd.c
parent6f6298e21c7396e1c2da51f706aa4e393ab255e6 (diff)
downloadphp-git-6552f469e546269e14f618000b052c6f0e5258ae.tar.gz
Fixed bug #45835 (include and symlinks)
Diffstat (limited to 'TSRM/tsrm_virtual_cwd.c')
-rw-r--r--TSRM/tsrm_virtual_cwd.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/TSRM/tsrm_virtual_cwd.c b/TSRM/tsrm_virtual_cwd.c
index 5cf0d83ad7..804c94b9f5 100644
--- a/TSRM/tsrm_virtual_cwd.c
+++ b/TSRM/tsrm_virtual_cwd.c
@@ -587,6 +587,9 @@ static int tsrm_realpath_r(char *path, int start, int len, int *ll, time_t *t, i
/* not a directory */
return -1;
} else {
+ if (link_is_dir) {
+ *link_is_dir = bucket->is_dir;
+ }
memcpy(path, bucket->realpath, bucket->realpath_len + 1);
return bucket->realpath_len;
}
@@ -656,6 +659,9 @@ static int tsrm_realpath_r(char *path, int start, int len, int *ll, time_t *t, i
return -1;
}
}
+ if (link_is_dir) {
+ *link_is_dir = directory;
+ }
} else {
if (save) {
directory = S_ISDIR(st.st_mode);