Michael J Gruber <git@xxxxxxxxxxxxxxxxxxxx> writes: > When no diff nor merge tool is specified (config, option), mergetool-lib > is supposed to choose a default tool from a set of tools. That set is > constructed dynamically depending on the environment (graphical, editor > setting) as a space separated string of tool names. > > 719518f (mergetool--lib: set IFS for difftool and mergetool, 2015-05-20) > introduced a newline as IFS which breaks the parsing of the space > separated list into items, resulting in a failed search for an available > tool. > > Set IFS to a space locally for the tool search. I wondered where this "locally" is ensured; it turns out that this shell function is supposed to be always called inside $() to return its result via its standard output ;-) So I think this change makes sense. > Signed-off-by: Michael J Gruber <git@xxxxxxxxxxxxxxxxxxxx> > --- > git-mergetool--lib.sh | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/git-mergetool--lib.sh b/git-mergetool--lib.sh > index 14b039d..54ac8e4 100644 > --- a/git-mergetool--lib.sh > +++ b/git-mergetool--lib.sh > @@ -305,6 +305,7 @@ guess_merge_tool () { > EOF > > # Loop over each candidate and stop when a valid merge tool is found. > + IFS=' ' > for tool in $tools > do > is_available "$tool" && echo "$tool" && return 0 -- To unsubscribe from this list: send the line "unsubscribe git" in