summary refs log tree commit diff
diff options
context:
space:
mode:
authorBarton E. Schaefer <schaefer@zsh.org>2017-09-18 08:40:02 -0700
committerBarton E. Schaefer <schaefer@zsh.org>2017-09-18 08:40:02 -0700
commitd29ad85533d5c1f7b5b7cf420ab0cd910032fb50 (patch)
treeea6692dd14663235d0ff329160653d0de93d8cf8
parentc2a189b336ae985e2bd904a350ee14c69f1a9afe (diff)
downloadzsh-d29ad85533d5c1f7b5b7cf420ab0cd910032fb50.tar.gz
zsh-d29ad85533d5c1f7b5b7cf420ab0cd910032fb50.tar.xz
zsh-d29ad85533d5c1f7b5b7cf420ab0cd910032fb50.zip
41723: one more case of 41627 in "while" loops.
-rw-r--r--ChangeLog4
-rw-r--r--Src/loop.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index a019fabe9..d0a03ee80 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2017-09-18  Barton E. Schaefer  <schaefer@zsh.org>
+
+	* 41723: Src/loop.c: one more case of 41627 in "while" loops.
+
 2017-09-18  Oliver Kiddle  <opk@zsh.org>
 
 	* 41726: Completion/Linux/Command/_cryptsetup: add + and = to
diff --git a/Src/loop.c b/Src/loop.c
index 40e3bcb34..1013aeb50 100644
--- a/Src/loop.c
+++ b/Src/loop.c
@@ -428,7 +428,7 @@ execwhile(Estate state, UNUSED(int do_exec))
     } else
         for (;;) {
             state->pc = loop;
-            noerrexit = 1;
+            noerrexit = NOERREXIT_EXIT | NOERREXIT_RETURN;
 
 	    /* In case the test condition is a functional no-op,
 	     * make sure signal handlers recognize ^C to end the loop. */