fix git_timed retry logic

git_timed retry logic actually only retried *if* we timed out, not if
the command itself failed, as it would explicitly exit if the return
code was anything except 124. This loops in all failure cases, which
was the intent of the original fix.

Related-Bug: #1282876

Change-Id: I576df4832665beb21992ffa873da28a198018530
This commit is contained in:
Sean Dague 2015-04-29 06:56:55 -04:00
parent fbc8660eb0
commit 8039e854aa
1 changed files with 1 additions and 8 deletions

View File

@ -19,14 +19,7 @@ function git_timed {
fi
until timeout -s SIGINT ${timeout} git "$@"; do
# 124 is timeout(1)'s special return code when it reached the
# timeout; otherwise assume fatal failure
if [[ $? -ne 124 ]]; then
exitcode=$?
echo $LINENO "git call failed: [git $@]"
exit $exitcode
fi
echo "Command exited with '$?' [git $@] ... retrying"
count=$(($count + 1))
echo "timeout ${count} for git call: [git $@]"
if [ $count -eq 3 ]; then