From e01223a26cb7afd9f44805f067c4dcdad06039b0 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Sun, 2 Feb 2020 18:05:47 +0000 Subject: 45373: Fix ERR_EXIT bug in else branch of if. The flags need resetting for this branch otherwise e.g. command substitution with non-zero status doesn't cause exit. --- Test/C03traps.ztst | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'Test/C03traps.ztst') diff --git a/Test/C03traps.ztst b/Test/C03traps.ztst index e661aabd5..6f84e5db2 100644 --- a/Test/C03traps.ztst +++ b/Test/C03traps.ztst @@ -500,6 +500,15 @@ >Succeed 2 >Succeed 3 + (set -e + if false; then + else + a=$(false) + print This should not appear + fi + ) +1:ERREXIT is triggered in an else block after a cmd subst returning false + fn() { emulate -L zsh setopt errreturn -- cgit 1.4.1