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
index dd0c9a5b7f..d32e47cc09 100755
--- a/git-difftool--helper.sh
+++ b/git-difftool--helper.sh
@@ -61,9 +61,7 @@ launch_merge_tool () {
export BASE
eval $GIT_DIFFTOOL_EXTCMD '"$LOCAL"' '"$REMOTE"'
else
- initialize_merge_tool "$merge_tool"
- # ignore the error from the above --- run_merge_tool
- # will diagnose unusable tool by itself
+ initialize_merge_tool "$merge_tool" || exit 1
run_merge_tool "$merge_tool"
fi
}
@@ -87,9 +85,7 @@ if test -n "$GIT_DIFFTOOL_DIRDIFF"
then
LOCAL="$1"
REMOTE="$2"
- initialize_merge_tool "$merge_tool"
- # ignore the error from the above --- run_merge_tool
- # will diagnose unusable tool by itself
+ initialize_merge_tool "$merge_tool" || exit 1
run_merge_tool "$merge_tool" false
status=$?