git-difftool--helper.sh: exit upon initialize_merge_tool errors
Since the introduction of 'initialize_merge_tool' in de8dafbada (mergetool: break setup_tool out into separate initialization function, 2021-02-09), any errors from this function are ignored in git-difftool--helper.sh::launch_merge_tool, which is not the case for its call in git-mergetool.sh::merge_file. Despite the in-code comment, initialize_merge_tool (via its call to setup_tool) does different checks than run_merge_tool, so it makes sense to abort early if it encounters errors. Add exit calls if initialize_merge_tool fails. Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Philippe Blain committed
Nov 22, 2024 at 19:50 UTC
dbaece3526c30efab07f7f06c849bd8deaf62249
1 file changed
+2
-6
git-difftool--helper.sh
+2
-6
@@ -61,9 +61,7 @@ launch_merge_tool () {
61
export BASE
62
eval $GIT_DIFFTOOL_EXTCMD '"$LOCAL"' '"$REMOTE"'
63
else
64
- initialize_merge_tool "$merge_tool"
65
- # ignore the error from the above --- run_merge_tool
66
- # will diagnose unusable tool by itself
64
+ initialize_merge_tool "$merge_tool" || exit 1
65
run_merge_tool "$merge_tool"
66
fi
67
}
@@ -87,9 +85,7 @@ if test -n "$GIT_DIFFTOOL_DIRDIFF"
85
then
86
LOCAL="$1"
87
REMOTE="$2"
90
- initialize_merge_tool "$merge_tool"
91
- # ignore the error from the above --- run_merge_tool
92
- # will diagnose unusable tool by itself
88
+ initialize_merge_tool "$merge_tool" || exit 1
89
run_merge_tool "$merge_tool" false
90
91
status=$?