about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBarton E. Schaefer <schaefer@zsh.org>2016-08-26 15:05:15 -0700
committerBarton E. Schaefer <schaefer@zsh.org>2016-08-26 15:05:15 -0700
commitb312abc93b3b8eae8feb4a9884b22f519a137c7f (patch)
tree63017b4ce5acfe5c71b8a8da05269249756c901c
parent317c96b64f43688a6be08a8b1c93b6ab4eed662c (diff)
downloadzsh-b312abc93b3b8eae8feb4a9884b22f519a137c7f.tar.gz
zsh-b312abc93b3b8eae8feb4a9884b22f519a137c7f.tar.xz
zsh-b312abc93b3b8eae8feb4a9884b22f519a137c7f.zip
39104: do not hash relative paths in findcmd()
-rw-r--r--ChangeLog4
-rw-r--r--Src/exec.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index b85cc1f92..f8c6e907e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2016-08-26  Barton E. Schaefer  <schaefer@zsh.org>
+
+	* 39104: Src/exec.c: do not hash relative paths in findcmd()
+
 2016-08-25  Daniel Shahaf  <d.s@daniel.shahaf.name>
 
 	* 39102: Completion/Unix/Command/_git: __git_recent_branches:
diff --git a/Src/exec.c b/Src/exec.c
index ea9214d04..9b24d388e 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -772,7 +772,7 @@ findcmd(char *arg0, int docopy)
     Cmdnam cn;
 
     cn = (Cmdnam) cmdnamtab->getnode(cmdnamtab, arg0);
-    if (!cn && isset(HASHCMDS))
+    if (!cn && isset(HASHCMDS) && !isrelative(arg0))
 	cn = hashcmd(arg0, path);
     if ((int) strlen(arg0) > PATH_MAX)
 	return NULL;