From 9420498acfbe4e7ef99adca7cc4eb6bf21c1d00d Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Tue, 2 May 2000 13:08:19 +0000 Subject: 11066: false || true was trigerring trap on ZERR --- ChangeLog | 5 +++++ Src/exec.c | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index a15ea1089..07c159f7f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2000-05-02 Peter Stephenson + + * 11066: Src/exec.c: suppress doing in and/or when at the end + of a sequence of &&/|| when another sublist follows. + 2000-05-02 Oliver Kiddle * 11065: Completion/Commands/_complete_debug: small fix to avoid diff --git a/Src/exec.c b/Src/exec.c index bc9edce2c..33f28b53b 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -842,7 +842,8 @@ execlist(Estate state, int dont_change_job, int exiting) * for this sublist. */ donetrap = 1; goto sublist_done; - } + } else if (WC_SUBLIST_TYPE(code) == WC_SUBLIST_END) + donetrap = 1; } cmdpush(CS_CMDAND); break; @@ -867,7 +868,8 @@ execlist(Estate state, int dont_change_job, int exiting) * for this sublist. */ donetrap = 1; goto sublist_done; - } + } else if (WC_SUBLIST_TYPE(code) == WC_SUBLIST_END) + donetrap = 1; } cmdpush(CS_CMDOR); break; -- cgit 1.4.1