Merge branch 'da/difftool-mergetool-simplify-reporting-status'
authorJunio C Hamano <gitster@pobox.com>
Fri, 12 Dec 2014 22:31:39 +0000 (14:31 -0800)
committerJunio C Hamano <gitster@pobox.com>
Fri, 12 Dec 2014 22:31:39 +0000 (14:31 -0800)
Code simplification.

* da/difftool-mergetool-simplify-reporting-status:
mergetools: stop setting $status in merge_cmd()
mergetool: simplify conditionals
difftool--helper: add explicit exit statement
mergetool--lib: remove use of $status global
mergetool--lib: remove no-op assignment to $status from setup_user_tool

git-difftool--helper.sh
git-mergetool--lib.sh
git-mergetool.sh
mergetools/diffmerge
mergetools/emerge
mergetools/kdiff3
index d4fb6dfe138fffd4d000c7d5aeb7787bea9970f4..2b11b1d6fe33cf3f61dd35b8f48d6953f7a25bff 100755 (executable)
@@ -94,3 +94,5 @@ else
                shift 7
        done
 fi
+
+exit 0
index 2b6635130a6c6e80cd8d188ae611bf220d25bc0a..fe61e89f31c44ca90dbfba468cf8b23d3993ba9f 100644 (file)
@@ -92,7 +92,7 @@ translate_merge_tool_path () {
 check_unchanged () {
        if test "$MERGED" -nt "$BACKUP"
        then
-               status=0
+               return 0
        else
                while true
                do
@@ -100,8 +100,8 @@ check_unchanged () {
                        printf "Was the merge successful? [y/n] "
                        read answer || return 1
                        case "$answer" in
-                       y*|Y*) status=0; break ;;
-                       n*|N*) status=1; break ;;
+                       y*|Y*) return 0 ;;
+                       n*|N*) return 1 ;;
                        esac
                done
        fi
@@ -119,8 +119,6 @@ setup_user_tool () {
 
        diff_cmd () {
                ( eval $merge_tool_cmd )
-               status=$?
-               return $status
        }
 
        merge_cmd () {
@@ -130,13 +128,10 @@ setup_user_tool () {
                then
                        touch "$BACKUP"
                        ( eval $merge_tool_cmd )
-                       status=$?
                        check_unchanged
                else
                        ( eval $merge_tool_cmd )
-                       status=$?
                fi
-               return $status
        }
 }
 
@@ -153,13 +148,11 @@ setup_tool () {
        }
 
        diff_cmd () {
-               status=1
-               return $status
+               return 1
        }
 
        merge_cmd () {
-               status=1
-               return $status
+               return 1
        }
 
        translate_merge_tool_path () {
@@ -210,7 +203,6 @@ run_merge_tool () {
 
        merge_tool_path=$(get_merge_tool_path "$1") || exit
        base_present="$2"
-       status=0
 
        # Bring tool-specific functions into scope
        setup_tool "$1" || return 1
@@ -221,8 +213,6 @@ run_merge_tool () {
        else
                run_diff_cmd "$1"
        fi
-       status=$?
-       return $status
 }
 
 # Run a either a configured or built-in diff tool
index ff050e58ff3b752113105ba3ea5e20c6b633aae9..d20581c15c5086b02411cab618cde0a9ff14e7ed 100755 (executable)
@@ -426,8 +426,6 @@ fi
 merge_keep_backup="$(git config --bool mergetool.keepBackup || echo true)"
 merge_keep_temporaries="$(git config --bool mergetool.keepTemporaries || echo false)"
 
-last_status=0
-rollup_status=0
 files=
 
 if test $# -eq 0
@@ -455,19 +453,15 @@ printf "%s\n" "$files"
 
 IFS='
 '
+rc=0
 for i in $files
 do
-       if test $last_status -ne 0
-       then
-               prompt_after_failed_merge || exit 1
-       fi
        printf "\n"
-       merge_file "$i"
-       last_status=$?
-       if test $last_status -ne 0
+       if ! merge_file "$i"
        then
-               rollup_status=1
+               rc=1
+               prompt_after_failed_merge || exit 1
        fi
 done
 
-exit $rollup_status
+exit $rc
index 85ac7201571ed34c35a3613b97bd1b82982e0d61..f138cb4e731018b40426337eb8062f40512df088 100644 (file)
@@ -11,5 +11,4 @@ merge_cmd () {
                "$merge_tool_path" --merge \
                        --result="$MERGED" "$LOCAL" "$REMOTE"
        fi
-       status=$?
 }
index f96d9e550a138d395ccb23c9496111630d2de594..7b895fdb1f9955eb470a2614e0634bfcd26d90c9 100644 (file)
@@ -15,7 +15,6 @@ merge_cmd () {
                        "$LOCAL" "$REMOTE" \
                        "$(basename "$MERGED")"
        fi
-       status=$?
 }
 
 translate_merge_tool_path() {
index a30034f116fda6f90448aeb4ddd42063ea60aad1..793d1293b16c9b28a9ec5c70ec7fa0875ab0da54 100644 (file)
@@ -20,5 +20,4 @@ merge_cmd () {
                        -o "$MERGED" "$LOCAL" "$REMOTE" \
                >/dev/null 2>&1
        fi
-       status=$?
 }