diff options
| author | Barton E. Schaefer <schaefer@zsh.org> | 2014-12-27 21:55:58 -0800 |
|---|---|---|
| committer | Barton E. Schaefer <schaefer@zsh.org> | 2014-12-27 21:55:58 -0800 |
| commit | d6a32ddeed914434f5b56b013c9d03b28781d065 (patch) | |
| tree | 050eb544d08c31b8ad2d443a7563bf68b6b72355 /Src/exec.c | |
| parent | 33977: don't complete widgets as first argument to bindkey (diff) | |
| download | zsh-d6a32ddeed914434f5b56b013c9d03b28781d065.tar zsh-d6a32ddeed914434f5b56b013c9d03b28781d065.tar.gz zsh-d6a32ddeed914434f5b56b013c9d03b28781d065.tar.bz2 zsh-d6a32ddeed914434f5b56b013c9d03b28781d065.tar.lz zsh-d6a32ddeed914434f5b56b013c9d03b28781d065.tar.xz zsh-d6a32ddeed914434f5b56b013c9d03b28781d065.tar.zst zsh-d6a32ddeed914434f5b56b013c9d03b28781d065.zip | |
34065: following an "if" condition, do not test lastval for ERR_EXIT until a new command is run
Includes unposted regression tests.
Diffstat (limited to 'Src/exec.c')
| -rw-r--r-- | Src/exec.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Src/exec.c b/Src/exec.c index 6a7dbb1e1..eaf73df25 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -2632,6 +2632,10 @@ execcmd(Estate state, int input, int output, int how, int last1) } } + /* if we get this far, it is OK to pay attention to lastval again */ + if (noerrexit == 2 && !is_shfunc) + noerrexit = 0; + /* Do prefork substitutions */ esprefork = (assign || isset(MAGICEQUALSUBST)) ? PREFORK_TYPESET : 0; if (args && htok) |
