about summary refs log tree commit diff
path: root/Src/exec.c
diff options
context:
space:
mode:
authorPhilippe Altherr <philippe.altherr@gmail.com>2022-12-03 21:35:51 -0800
committerBart Schaefer <schaefer@zsh.org>2022-12-03 21:35:51 -0800
commitab9c579ef9a1ad6482267719f5d031f6a5dbf24e (patch)
treeca8213bf78fc1673c3951ef70bb53e91706c9d36 /Src/exec.c
parentf253ea6b9d14901e24fa6a376936effad9e6547b (diff)
downloadzsh-ab9c579ef9a1ad6482267719f5d031f6a5dbf24e.tar.gz
zsh-ab9c579ef9a1ad6482267719f5d031f6a5dbf24e.tar.xz
zsh-ab9c579ef9a1ad6482267719f5d031f6a5dbf24e.zip
51098: remove unreachable NOERREXIT_UNTIL_EXEC code and effects
Diffstat (limited to 'Src/exec.c')
-rw-r--r--Src/exec.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/Src/exec.c b/Src/exec.c
index 8ff6489ec..1dd569019 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -1559,14 +1559,7 @@ execlist(Estate state, int dont_change_job, int exiting)
 	state->pc--;
 sublist_done:
 
-	/*
-	 * See hairy code near the end of execif() for the
-	 * following.  "noerrexit " only applies until
-	 * we hit execcmd on the way down.  We're now
-	 * on the way back up, so don't restore it.
-	 */
-	if (!(oldnoerrexit & NOERREXIT_UNTIL_EXEC))
-	    noerrexit = oldnoerrexit;
+	noerrexit = oldnoerrexit;
 
 	if (sigtrapped[SIGDEBUG] && !isset(DEBUGBEFORECMD) && !donedebug) {
 	    /*
@@ -3246,10 +3239,6 @@ execcmd_exec(Estate state, Execcmd_params eparams,
     } else
 	preargs = NULL;
 
-    /* if we get this far, it is OK to pay attention to lastval again */
-    if (noerrexit & NOERREXIT_UNTIL_EXEC)
-	noerrexit = 0;
-
     /* Do prefork substitutions.
      *
      * Decide if we need "magic" handling of ~'s etc. in