about summary refs log tree commit diff
path: root/Src
diff options
context:
space:
mode:
authorBarton E. Schaefer <schaefer@zsh.org>2015-03-28 21:08:02 -0700
committerBarton E. Schaefer <schaefer@zsh.org>2015-03-28 21:08:02 -0700
commit7d2b53f65bae3f16cf318103e53eb8350af6bd8a (patch)
treeab26af97a44e98f9d48b66485bdd93b2475a5866 /Src
parentab4065623aa07a2bf74edcda62d29d02154779d8 (diff)
downloadzsh-7d2b53f65bae3f16cf318103e53eb8350af6bd8a.tar.gz
zsh-7d2b53f65bae3f16cf318103e53eb8350af6bd8a.tar.xz
zsh-7d2b53f65bae3f16cf318103e53eb8350af6bd8a.zip
34804: refine POSIX_ALIAS change to preserve old behavior of [[ ]] conditionals
Diffstat (limited to 'Src')
-rw-r--r--Src/lex.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/Src/lex.c b/Src/lex.c
index 4d8355bac..2e611707e 100644
--- a/Src/lex.c
+++ b/Src/lex.c
@@ -1794,9 +1794,6 @@ exalias(void)
 	if (has_token(tokstr)) {
 	    char *p, *t;
 
-	    if (isset(POSIXALIASES))
-		return 0;
-
 	    zshlextext = p = copy;
 	    for (t = tokstr;
 		 (*p++ = itok(*t) ? ztokens[*t++ - Pound] : *t++););
@@ -1816,7 +1813,7 @@ exalias(void)
 
 	if (tok == STRING) {
 	    /* Check for an alias */
-	    if (checkalias()) {
+	    if ((zshlextext != copy || !isset(POSIXALIASES)) && checkalias()) {
 		if (zshlextext == copy)
 		    zshlextext = tokstr;
 		return 1;