It has already been fixed in commit 454efb47 (git-gui (Win): make "Explore Working Copy" more robust, 2009-04-01), but has been broken in commit 21985a11 (git-gui: handle non-standard worktree locations, 2010-01-23) by accidentally replacing too much with a new variable. The problem can be reproduced when starting git-gui from within a subdirectory. The solution is to convert the path name, explorer.exe is invoked with, to a platform native name. Signed-off-by: Markus Heidelberg <markus.heidelberg@xxxxxx> --- > > > Maybe _gitworktree should be normalized or nativenamified when it is set > > > and then will work everywhere it is used for every platform? > > > > The only issue with that would be that GIT_DIR and GIT_WORK_TREE are > > (re)inizialized > > from _gitdir and _gitworktree, so it would not be safe if git on > > Windows works better with unix-style rather than native paths. If git > > on windows handles native paths fine, it should be no problem. > > Tcl internally uses unix type path separators but once you export this > path to the operating system you may need to ensure it is a native > path. Typically that means when calling [exec]. [open] is a tcl > command and will deal with a path variable in either style. The Tcl > exec man page has some notes on the compatibility issues. So this should be the obvious solution. git-gui.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/git-gui.sh b/git-gui.sh index 8996d2d..7184afa 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -2101,7 +2101,7 @@ proc do_explore {} { # freedesktop.org-conforming system is our best shot set explorer "xdg-open" } - eval exec $explorer $_gitworktree & + eval exec $explorer [list [file nativename $_gitworktree]] & } set is_quitting 0 -- 1.7.0.52.gb3f79 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html