# difftool / mergetool waiting

3 messages from 2012-01-14 to 2012-01-20. Participants: Jonathan Seng, Andreas Schwab, David Aguilar.
Thread: https://gitlist.dev/t/29364

## Jonathan Seng, 2012-01-14 05:13

Subject: difftool / mergetool waiting
Message-ID: <CAG=s6FnG=3hO5jykc8s40SrCPfvJSvtEMVNBSihX5Y7T3b9SMg@mail.gmail.com>
URL: https://gitlist.dev/e/CAG%3Ds6FnG%3D3hO5jykc8s40SrCPfvJSvtEMVNBSihX5Y7T3b9SMg%40mail.gmail.com

```
Hello,

I would like an option to difftool and mergetool that would control
waiting for a return code from the difftool: wait.


Like prompt, wait would be configurable with the difftool.name.

Like prompt and for backwards compatibility, wait would default true.


If wait is false, prompt would be overridden to be false.

If wait is false, git would fire off the tool command and proceed to
the next then exit cleanly.

If wait is true, git would behave as now: it will wait for an exit
code of each tool execution before proceeding.


Thank you,

Jonathan

```

## Andreas Schwab, 2012-01-14 08:38

Subject: Re: difftool / mergetool waiting
Message-ID: <m239biadb5.fsf@igel.home>
URL: https://gitlist.dev/e/m239biadb5.fsf%40igel.home
In-Reply-To: <CAG=s6FnG=3hO5jykc8s40SrCPfvJSvtEMVNBSihX5Y7T3b9SMg@mail.gmail.com>

```
Jonathan Seng <nekenyu@gmail.com> writes:

> If wait is false, git would fire off the tool command and proceed to
> the next then exit cleanly.

That doesn't work for git mergetool, it wouldn't be able to postprocess
the result of calling the tool command.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

```

## David Aguilar, 2012-01-20 07:25

Subject: Re: difftool / mergetool waiting
Message-ID: <CAJDDKr4WWfui5micnDQ97fJQC_5UxXoAB062vhHEPBVa070Bvw@mail.gmail.com>
URL: https://gitlist.dev/e/CAJDDKr4WWfui5micnDQ97fJQC_5UxXoAB062vhHEPBVa070Bvw%40mail.gmail.com
In-Reply-To: <m239biadb5.fsf@igel.home>

```
On Sat, Jan 14, 2012 at 12:38 AM, Andreas Schwab <schwab@linux-m68k.org> wrote:
> Jonathan Seng <nekenyu@gmail.com> writes:
>
>> If wait is false, git would fire off the tool command and proceed to
>> the next then exit cleanly.
>
> That doesn't work for git mergetool, it wouldn't be able to postprocess
> the result of calling the tool command.

The difficulty on the difftool side is that the git-difftool--helper
scriptlet is being driven by git diff (as a $GIT_EXTERNAL_DIFF) and
depends on git diff to do the temp file cleanup.  Not blocking would
return control immediately to git diff.  This is unwanted because the
temp files would likely be removed before the tools have a chance to
open them.

You could write a script that simply forks off multiple difftool
commands.  The difftool stuff in git-cola does exactly that, for
example.
-- 
            David

```
