Skip to content

Commit 0ddedd4

Browse files
committed
Merge branch 'da/difftool-mergetool-simplify-reporting-status'
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
2 parents e886efd + 1e86d5b commit 0ddedd4

File tree

6 files changed

+12
-29
lines changed

6 files changed

+12
-29
lines changed

git-difftool--helper.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,3 +94,5 @@ else
9494
shift 7
9595
done
9696
fi
97+
98+
exit 0

git-mergetool--lib.sh

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -92,16 +92,16 @@ translate_merge_tool_path () {
9292
check_unchanged () {
9393
if test "$MERGED" -nt "$BACKUP"
9494
then
95-
status=0
95+
return 0
9696
else
9797
while true
9898
do
9999
echo "$MERGED seems unchanged."
100100
printf "Was the merge successful? [y/n] "
101101
read answer || return 1
102102
case "$answer" in
103-
y*|Y*) status=0; break ;;
104-
n*|N*) status=1; break ;;
103+
y*|Y*) return 0 ;;
104+
n*|N*) return 1 ;;
105105
esac
106106
done
107107
fi
@@ -119,8 +119,6 @@ setup_user_tool () {
119119

120120
diff_cmd () {
121121
( eval $merge_tool_cmd )
122-
status=$?
123-
return $status
124122
}
125123

126124
merge_cmd () {
@@ -130,13 +128,10 @@ setup_user_tool () {
130128
then
131129
touch "$BACKUP"
132130
( eval $merge_tool_cmd )
133-
status=$?
134131
check_unchanged
135132
else
136133
( eval $merge_tool_cmd )
137-
status=$?
138134
fi
139-
return $status
140135
}
141136
}
142137

@@ -153,13 +148,11 @@ setup_tool () {
153148
}
154149

155150
diff_cmd () {
156-
status=1
157-
return $status
151+
return 1
158152
}
159153

160154
merge_cmd () {
161-
status=1
162-
return $status
155+
return 1
163156
}
164157

165158
translate_merge_tool_path () {
@@ -210,7 +203,6 @@ run_merge_tool () {
210203

211204
merge_tool_path=$(get_merge_tool_path "$1") || exit
212205
base_present="$2"
213-
status=0
214206

215207
# Bring tool-specific functions into scope
216208
setup_tool "$1" || return 1
@@ -221,8 +213,6 @@ run_merge_tool () {
221213
else
222214
run_diff_cmd "$1"
223215
fi
224-
status=$?
225-
return $status
226216
}
227217

228218
# Run a either a configured or built-in diff tool

git-mergetool.sh

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -426,8 +426,6 @@ fi
426426
merge_keep_backup="$(git config --bool mergetool.keepBackup || echo true)"
427427
merge_keep_temporaries="$(git config --bool mergetool.keepTemporaries || echo false)"
428428

429-
last_status=0
430-
rollup_status=0
431429
files=
432430

433431
if test $# -eq 0
@@ -455,19 +453,15 @@ printf "%s\n" "$files"
455453

456454
IFS='
457455
'
456+
rc=0
458457
for i in $files
459458
do
460-
if test $last_status -ne 0
461-
then
462-
prompt_after_failed_merge || exit 1
463-
fi
464459
printf "\n"
465-
merge_file "$i"
466-
last_status=$?
467-
if test $last_status -ne 0
460+
if ! merge_file "$i"
468461
then
469-
rollup_status=1
462+
rc=1
463+
prompt_after_failed_merge || exit 1
470464
fi
471465
done
472466

473-
exit $rollup_status
467+
exit $rc

mergetools/diffmerge

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,4 @@ merge_cmd () {
1111
"$merge_tool_path" --merge \
1212
--result="$MERGED" "$LOCAL" "$REMOTE"
1313
fi
14-
status=$?
1514
}

mergetools/emerge

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ merge_cmd () {
1515
"$LOCAL" "$REMOTE" \
1616
"$(basename "$MERGED")"
1717
fi
18-
status=$?
1918
}
2019

2120
translate_merge_tool_path() {

mergetools/kdiff3

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,4 @@ merge_cmd () {
2020
-o "$MERGED" "$LOCAL" "$REMOTE" \
2121
>/dev/null 2>&1
2222
fi
23-
status=$?
2423
}

0 commit comments

Comments
 (0)