From 7850fc5a2cbdbcec1da405f4d3eba65abf3293f8 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Tue, 8 Jun 2010 08:51:03 +0000 Subject: 28006: make zgetcwd() fall back to pwd, only use "." if setting pwd --- Src/builtin.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'Src/builtin.c') diff --git a/Src/builtin.c b/Src/builtin.c index e9e8e3bff..6dbd1597f 100644 --- a/Src/builtin.c +++ b/Src/builtin.c @@ -805,6 +805,7 @@ bin_cd(char *nam, char **argv, Options ops, int func) if (stat(unmeta(pwd), &st1) < 0) { setjobpwd(); zsfree(pwd); + pwd = NULL; pwd = metafy(zgetcwd(), -1, META_DUP); } else if (stat(".", &st2) < 0) { if (chdir(unmeta(pwd)) < 0) @@ -813,6 +814,7 @@ bin_cd(char *nam, char **argv, Options ops, int func) if (chasinglinks) { setjobpwd(); zsfree(pwd); + pwd = NULL; pwd = metafy(zgetcwd(), -1, META_DUP); } else if (chdir(unmeta(pwd)) < 0) zwarn("unable to chdir(%s): %e", pwd, errno); -- cgit 1.4.1