summary refs log tree commit diff
path: root/Src
diff options
context:
space:
mode:
authorPeter Stephenson <p.w.stephenson@ntlworld.com>2015-01-10 20:28:57 +0000
committerPeter Stephenson <p.w.stephenson@ntlworld.com>2015-01-10 20:28:57 +0000
commit3b32abafdb019cfb8f29908bc3d148e01518981d (patch)
tree1f30cd6730b79999f5cb55552224ca9a4d0ceeb7 /Src
parent81ad9ed76634173f9563eb155cf00c5e25169c5a (diff)
downloadzsh-3b32abafdb019cfb8f29908bc3d148e01518981d.tar.gz
zsh-3b32abafdb019cfb8f29908bc3d148e01518981d.tar.xz
zsh-3b32abafdb019cfb8f29908bc3d148e01518981d.zip
34220: new $(...) handling needs to back up over alias expansion
Diffstat (limited to 'Src')
-rw-r--r--Src/input.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/Src/input.c b/Src/input.c
index 04dda5acd..2ecac7bdc 100644
--- a/Src/input.c
+++ b/Src/input.c
@@ -537,6 +537,12 @@ inpush(char *str, int flags, Alias inalias)
 static void
 inpoptop(void)
 {
+    if (!lexstop) {
+	inbufflags &= ~INP_ALCONT;
+	while (inbufptr > inbuf)
+	    inungetc(inbufptr[-1]);
+    }
+
     if (inbuf && (inbufflags & INP_FREE))
 	free(inbuf);