about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBart Schaefer <barts@users.sourceforge.net>2001-08-19 04:20:19 +0000
committerBart Schaefer <barts@users.sourceforge.net>2001-08-19 04:20:19 +0000
commit50e34d4acb578c985f5c9ac453af97aec3b7a867 (patch)
treee123651b33d9ac79d7541176d4049e38f11eb0a0
parentd7f25fbbfd9cc194acedbb4cf6c43b2a6bdf9bc2 (diff)
downloadzsh-50e34d4acb578c985f5c9ac453af97aec3b7a867.tar.gz
zsh-50e34d4acb578c985f5c9ac453af97aec3b7a867.tar.xz
zsh-50e34d4acb578c985f5c9ac453af97aec3b7a867.zip
Fix exit status of zsh -fc '! command'
-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;