about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2005-07-14 20:20:11 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2005-07-14 20:20:11 +0000
commitb2cfbabced50d9c4b936006fbba58a227987490c (patch)
tree4576f5ccad96a5a8e39a1f3e4871c2b79842591e
parentbbe1c9bd176dcc9f44ddb2158b441387aaf9c75f (diff)
downloadzsh-b2cfbabced50d9c4b936006fbba58a227987490c.tar.gz
zsh-b2cfbabced50d9c4b936006fbba58a227987490c.tar.xz
zsh-b2cfbabced50d9c4b936006fbba58a227987490c.zip
21466: mkdir -p didn't work with symlinks
-rw-r--r--ChangeLog5
-rw-r--r--Src/Modules/files.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index bd172e044..0522a044a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-07-14  Peter Stephenson  <pws@pwstephenson.fsnet.co.uk>
+
+	* 21466: Src/Modules/files.c: lstat() should be stat() in mkdir -p
+	test (from Fr. Br. George).
+
 2005-07-12  Doug Kearns  <djkea2@gus.gscit.monash.edu.au>
 
 	* 21449: Completion/Unix/Command/_ruby: limit options available to
diff --git a/Src/Modules/files.c b/Src/Modules/files.c
index 30ed32103..bb1cc0065 100644
--- a/Src/Modules/files.c
+++ b/Src/Modules/files.c
@@ -127,7 +127,7 @@ domkdir(char *nam, char *path, mode_t mode, int p)
     if(p) {
 	struct stat st;
 
-	if(!lstat(rpath, &st) && S_ISDIR(st.st_mode))
+	if(!stat(rpath, &st) && S_ISDIR(st.st_mode))
 	    return 0;
     }
     oumask = umask(0);