summaryrefslogtreecommitdiff
path: root/t/t7602-merge-octopus-many.sh
diff options
context:
space:
mode:
authorLibravatar Eric Sunshine <sunshine@sunshineco.com>2021-12-09 00:11:15 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2021-12-13 10:29:48 -0800
commit0c51d6b4aec9f1959d148960cb55155b676cec78 (patch)
tree3b7e70327191ff2a03ec8aacb7f951fb72cb978c /t/t7602-merge-octopus-many.sh
parentt5000-t5999: detect and signal failure within loop (diff)
downloadtgif-0c51d6b4aec9f1959d148960cb55155b676cec78.tar.xz
t6000-t9999: detect and signal failure within loop
Failures within `for` and `while` loops can go unnoticed if not detected and signaled manually since the loop itself does not abort when a contained command fails, nor will a failure necessarily be detected when the loop finishes since the loop returns the exit code of the last command it ran on the final iteration, which may not be the command which failed. Therefore, detect and signal failures manually within loops using the idiom `|| return 1` (or `|| exit 1` within subshells). Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Reviewed-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t7602-merge-octopus-many.sh')
-rwxr-xr-xt/t7602-merge-octopus-many.sh2
1 files changed, 1 insertions, 1 deletions
diff --git a/t/t7602-merge-octopus-many.sh b/t/t7602-merge-octopus-many.sh
index ddf64dc5f7..ff085b086c 100755
--- a/t/t7602-merge-octopus-many.sh
+++ b/t/t7602-merge-octopus-many.sh
@@ -30,7 +30,7 @@ test_expect_success 'merge c1 with c2, c3, c4, ... c29' '
while test $i -le 30
do
refs="$refs c$i" &&
- i=$(expr $i + 1)
+ i=$(expr $i + 1) || return 1
done &&
git merge $refs &&
test "$(git rev-parse c1)" != "$(git rev-parse HEAD)" &&