This eliminates an unnecessary prompt to continue after failed merger. The patch uses positional parameters to count files in the list. If only one iteration is remained, the prompt_after_failed_merge function is not called. Signed-off-by: Nicholas Guriev <guriev-ns@xxxxx> --- git-mergetool.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/git-mergetool.sh b/git-mergetool.sh index c062e3d..d07c7f3 100755 --- a/git-mergetool.sh +++ b/git-mergetool.sh @@ -491,14 +491,16 @@ main () { printf "%s\n" "$files" rc=0 - for i in $files + set -- $files + while test $# -ne 0 do printf "\n" - if ! merge_file "$i" + if ! merge_file "$1" then rc=1 - prompt_after_failed_merge || exit 1 + test $# -ne 1 && prompt_after_failed_merge || exit 1 fi + shift done exit $rc -- 2.7.4