aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShawn O. Pearce <spearce@spearce.org>2007-09-21 11:08:50 -0400
committerShawn O. Pearce <spearce@spearce.org>2007-09-21 21:58:37 -0400
commit299077fb40eac1e128b7bc09d5d992960e6f11c2 (patch)
tree30c124a00ce874c3855ed391989558a44553d175
parent183a1d1496921e16d316ac523146385af39fcdb0 (diff)
downloadgit-299077fb40eac1e128b7bc09d5d992960e6f11c2.tar.gz
git-299077fb40eac1e128b7bc09d5d992960e6f11c2.tar.xz
git-gui: Handle starting on mapped shares under Cygwin
I really cannot explain Cygwin's behavior here but if we start git-gui through Cygwin on a local drive it appears that Cygwin is leaving $env(PATH) in Unix style, even if it started a native (non-Cygwin) Tcl/Tk process to run git-gui. Yet starting that same git-gui and Tcl/Tk combination through Cygwin on a network share causes it to automatically convert $env(PATH) into Windows style, which broke our internal "which" implementation. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
-rwxr-xr-xgit-gui.sh2
1 files changed, 1 insertions, 1 deletions
diff --git a/git-gui.sh b/git-gui.sh
index 10710e26c..62e165227 100755
--- a/git-gui.sh
+++ b/git-gui.sh
@@ -305,7 +305,7 @@ proc _which {what} {
global env _search_exe _search_path
if {$_search_path eq {}} {
- if {[is_Cygwin]} {
+ if {[is_Cygwin] && [regexp {^(/|\.:)} $env(PATH)]} {
set _search_path [split [exec cygpath \
--windows \
--path \