summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Src/lex.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index cb7405a85..c7c863c96 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2016-09-07  Peter Stephenson  <p.w.stephenson@ntlworld.com>
+
+	* 39185: Src/lex.c: wordbeg only set for ZLE if not alias.
+	Fixes crash on completion in some obscure alias expansions.
+
 2016-09-07  Peter Stephenson  <p.stephenson@samsung.com>
 
 	* Matthew Martin: 39221: Completion/Unix/Command/_rm: update for
diff --git a/Src/lex.c b/Src/lex.c
index 6b20e14b5..e0935bf05 100644
--- a/Src/lex.c
+++ b/Src/lex.c
@@ -613,7 +613,7 @@ gettok(void)
     if (lexstop)
 	return (errflag) ? LEXERR : ENDINPUT;
     isfirstln = 0;
-    if ((lexflags & LEXFLAGS_ZLE))
+    if ((lexflags & LEXFLAGS_ZLE) && !(inbufflags & INP_ALIAS))
 	wordbeg = inbufct - (qbang && c == bangchar);
     hwbegin(-1-(qbang && c == bangchar));
     /* word includes the last character read and possibly \ before ! */