summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--Functions/VCS_Info/VCS_INFO_realpath15
2 files changed, 9 insertions, 13 deletions
diff --git a/ChangeLog b/ChangeLog
index 013855ac3..1218cb60b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-03-04  Peter Stephenson  <pws@csr.com>
+
+	* Frank: 27768: Functions/VCS_Info/VCS_INFO_realpath: shut up cd
+	some more.
+
 2010-02-28  Clint Adams  <clint@zsh.org>
 
 	* 27762: Completion/Unix/Type/_hosts: omit ssh known_hosts
@@ -12854,5 +12859,5 @@
 
 *****************************************************
 * This is used by the shell to define $ZSH_PATCHLEVEL
-* $Revision: 1.4922 $
+* $Revision: 1.4923 $
 *****************************************************
diff --git a/Functions/VCS_Info/VCS_INFO_realpath b/Functions/VCS_Info/VCS_INFO_realpath
index c0f48a4ef..ce4a69402 100644
--- a/Functions/VCS_Info/VCS_INFO_realpath
+++ b/Functions/VCS_Info/VCS_INFO_realpath
@@ -2,15 +2,6 @@
 ## Written by Frank Terbeck <ft@bewatermyfriend.org>
 ## Distributed under the same BSD-ish license as zsh itself.
 
-# a portable 'readlink -f'
-# forcing a subshell, to ensure chpwd() is not removed
-# from the calling shell (if VCS_INFO_realpath() is called
-# manually).
-
-setopt localoptions NO_shwordsplit
-
-(
-    (( ${+functions[chpwd]} )) && unfunction chpwd
-    setopt chaselinks
-    builtin cd $1 2>/dev/null && pwd
-)
+setopt localoptions NO_shwordsplit chaselinks
+# -q to avoid chpwd() invocations
+( builtin cd -q $1 2>/dev/null && pwd; )