about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--Src/exec.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 6a0434e66..73042f7e1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2001-08-18  Bart Schaefer  <schaefer@zsh.org>
+
+	* 15617: Src/exec.c: Fix exit status of zsh -fc '! command'.
+
 2001-08-17  Wayne Davison  <wayned@users.sourceforge.net>
 
 	* users/4092: Src/hist.c: Don't drop the last line of the history
diff --git a/Src/exec.c b/Src/exec.c
index 071dee7cc..fda120d32 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -943,6 +943,8 @@ execpline(Estate state, wordcode slcode, int how, int last1)
 
     if (wc_code(code) != WC_PIPE)
 	return lastval = (slflags & WC_SUBLIST_NOT) != 0;
+    else if (slflags & WC_SUBLIST_NOT)
+	last1 = 0;
 
     pj = thisjob;
     ipipe[0] = ipipe[1] = opipe[0] = opipe[1] = 0;