# [PATCH] Update kdiff3 install location

2 messages from 2022-10-07 to 2022-10-07. Participants: Michael Schindler via GitGitGadget, Junio C Hamano.
Thread: https://gitlist.dev/t/58581

## Michael Schindler via GitGitGadget, 2022-10-07 11:17

Subject: [PATCH] Update kdiff3 install location
Message-ID: <pull.1376.git.1665141449621.gitgitgadget@gmail.com>
URL: https://gitlist.dev/e/pull.1376.git.1665141449621.gitgitgadget%40gmail.com

```
From: Michael Schindler <michael@compressconsult.com>

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%

fetch a recent windows version from https://download.kde.org/stable/kdiff3/
to see.

Signed-off-by: Michael Schindler <michael.schindler@allianz.at>
---
    Update kdiff3
    
    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%
    
    fetch a recent windows version from
    https://download.kde.org/stable/kdiff3/ to see.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1376%2Fmichaelcompressconsult%2Fkdiff3_win_moved-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1376/michaelcompressconsult/kdiff3_win_moved-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1376

 mergetools/kdiff3 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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
 }

base-commit: 3dcec76d9df911ed8321007b1d197c1a206dc164
-- 
gitgitgadget

```

## Junio C Hamano, 2022-10-07 17:02

Subject: Re: [PATCH] Update kdiff3 install location
Message-ID: <xmqqedvjh8ic.fsf@gitster.g>
URL: https://gitlist.dev/e/xmqqedvjh8ic.fsf%40gitster.g
In-Reply-To: <pull.1376.git.1665141449621.gitgitgadget@gmail.com>

```
"Michael Schindler via GitGitGadget" <gitgitgadget@gmail.com>
writes:

> From: Michael Schindler <michael@compressconsult.com>
>
> 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.

```
