Equalize discoverGitPrefix() implementations between POSIX and Win32

Change-Id: I936df151890d4bba9079d79c65b75a69c209523b
Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
This commit is contained in:
Sebastian Schuberth 2015-05-19 09:35:18 +02:00 committed by Matthias Sohn
parent 8025443db4
commit 4ca2fc5ce7
2 changed files with 18 additions and 16 deletions

View File

@ -141,16 +141,18 @@ protected File discoverGitPrefix() {
return resolveGrandparentFile(gitExe);
if (SystemReader.getInstance().isMacOS()) {
// On MacOSX, PATH is shorter when Eclipse is launched from the
// Finder than from a terminal. Therefore try to launch bash as a
// login shell and search using that.
//
String w = readPipe(userHome(), //
new String[] { "bash", "--login", "-c", "which git" }, // //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
Charset.defaultCharset().name());
if (w == null || w.length() == 0)
return null;
return resolveGrandparentFile(new File(w));
if (searchPath(path, "bash") != null) { //$NON-NLS-1$
// On MacOSX, PATH is shorter when Eclipse is launched from the
// Finder than from a terminal. Therefore try to launch bash as a
// login shell and search using that.
String w = readPipe(userHome(),
new String[] { "bash", "--login", "-c", "which git" }, // //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
Charset.defaultCharset().name());
if (w == null || w.length() == 0)
return null;
gitExe = new File(w);
return resolveGrandparentFile(gitExe);
}
}
return null;

View File

@ -117,12 +117,12 @@ protected File discoverGitPrefix() {
String w = readPipe(userHome(),
new String[] { "bash", "--login", "-c", "which git" }, // //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
Charset.defaultCharset().name());
if (w != null) {
// The path may be in cygwin/msys notation so resolve it right away
gitExe = resolve(null, w);
if (gitExe != null)
return resolveGrandparentFile(gitExe);
}
if (w == null || w.length() == 0)
return null;
// The path may be in cygwin/msys notation so resolve it right away
gitExe = resolve(null, w);
if (gitExe != null)
return resolveGrandparentFile(gitExe);
}
return null;