git-gui: Work around odd cygpath bug on Windows.

There appears to be a bug on one of my test systems where cygpath with
the --long-name option is generating a corrupt string that does not
actually refer to sh.exe.  This breaks any desktop icon created by
git-gui as the executable we are trying to invoke does not exist.
Since Cygwin is typically installed as C:\cygwin long path names is
probably not actually necessary to link to the shell.

I also added a small echo to the start of the icon script, as it can
take one of my test systems several seconds to startup git-gui.  This
way the user knows we're starting git-gui, and was politely asked to
wait for the action to complete.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
This commit is contained in:
Shawn O. Pearce 2007-01-20 19:03:26 -05:00
parent 68cbfb1391
commit bdadecbae5

View File

@ -2742,7 +2742,6 @@ proc do_windows_shortcut {} {
set sh [exec cygpath \ set sh [exec cygpath \
--windows \ --windows \
--absolute \ --absolute \
--long-name \
/bin/sh] /bin/sh]
set me [exec cygpath \ set me [exec cygpath \
--unix \ --unix \
@ -2754,6 +2753,7 @@ proc do_windows_shortcut {} {
$gitdir] $gitdir]
regsub -all ' $me "'\\''" me regsub -all ' $me "'\\''" me
regsub -all ' $gd "'\\''" gd regsub -all ' $gd "'\\''" gd
puts $fd "@ECHO Starting git-gui... Please wait..."
puts -nonewline $fd "\"$sh\" --login -c \"" puts -nonewline $fd "\"$sh\" --login -c \""
puts -nonewline $fd "GIT_DIR='$gd'" puts -nonewline $fd "GIT_DIR='$gd'"
puts -nonewline $fd " '$me'" puts -nonewline $fd " '$me'"