Subject: Re: [PATCH] Update kdiff3 install location

From: Junio C Hamano <[email-masked]>
Date: Fri, 07 Oct 2022 10:02:35 -0700

"Michael Schindler via GitGitGadget" <[email-masked]>
writes:

> From: Michael Schindler <[email-masked]>
>
> newer versions of kdiff3 for windows install the executable for windows
> in a /bin subfolder.
> This change changes the place where the executable is searched to the new
> location if not found in %PATH%

What happens to those who already have kdiff3 on Windows and haven't
upgraded to the ones installed in the /bin subfolder with this
change?

> diff --git a/mergetools/kdiff3 b/mergetools/kdiff3
> index ee8b3a0570e..c26a9573815 100644
> --- a/mergetools/kdiff3
> +++ b/mergetools/kdiff3
> @@ -39,6 +39,6 @@ translate_merge_tool_path() {
>  	then
>  		echo kdiff3
>  	else
> -		mergetool_find_win32_cmd "kdiff3.exe" "Kdiff3"
> +		mergetool_find_win32_cmd "kdiff3.exe" "Kdiff3/bin"
>  	fi
>  }

Will they lose the access to kdiff3 backend when they upgrade their
Git to a version that includes this change, or is the old location
expected to be on %PATH%?  I find the latter unlikely---the original
would not have bothered to use mergetool_find_win32_cmd if that were
the case.

I am wondering if mergetool_find_win32_cmd should take multiple
candidate directories, not just a single directory, so that users of
old and new versions are both kept happy.

Thanks.