echo ""
fi
'
- _TO_TEST='"$(borg '"$@"')"'
+ _TO_TEST='borg '"$@"
_ON_FAIL='echo "unexpected borg error, code ${_RESULT}."'
_ON_LOOP_END='export BORG_PASSPHRASE='
retry_until 52 "${_PREPARE}" "${_TO_TEST}" "${_ON_FAIL}" "${_ON_LOOP_END}"
"${NAME_BORGAPP}" claim "${_FILENAME}"
done
cd -
-retry_until 2 '' "${NAME_BORGAPP} orgpull" "echo 'Aborting due to unexpected ${NAME_BORGAPP} error.'"
+retry_until 2 '' "${NAME_BORGAPP} orgpull" "echo 'Aborting due to unexpected ${NAME_BORGAPP} error.'" '' 'direct'
echo "${_OUTPUT}"
_PREPARE='printf "Passphrase: "; PASSPHRASE=$(get_passphrase); echo ""'
_TO_TEST='echo "${PASSPHRASE}" | pmount "${PATH_DEV}" 2>&1'
_ON_FAIL='echo "Aborting due to pmount error:'
- retry_until 100 ${_PREPARE}" "${_TO_TEST}" "${_ON_FAIL}"
+ retry_until 100 "${_PREPARE}" "${_TO_TEST}" "${_ON_FAIL}"
echo "${_OUTPUT}"
}
_TO_TEST="$3"
_ON_FAIL="$4"
_ON_LOOP_END="$5"
+ _OUTPUT_MODE="$6"
while true; do
eval "${_ON_LOOP_START}"
set +e
- _OUTPUT="$(eval ${_TO_TEST})"
- _RESULT=$?
+ if [ "${_OUTPUT_MODE}" = 'direct' ]; then
+ eval ${_TO_TEST}
+ _RESULT=$?
+ else
+ _OUTPUT="$(eval ${_TO_TEST})"
+ _RESULT=$?
+ fi
set -e
if [ "${_RESULT}" = '0' ]; then
break
- elif [ "${RESULT}" != "${_CODE_FOR_CONTINUE}" ]; then
+ elif [ "${_RESULT}" != "${_CODE_FOR_CONTINUE}" ]; then
eval "${_ON_FAIL}"
abort
fi