git-gui: allow specifying path '.' to the browser

Invoking "git-gui browser rev ." should show the file browser for the
commitish rev, starting at the current directory. When the current
directory is the working tree root, this errors out in normalize_relpath
because the '.' is removed, yielding an empty list as argument to [file
join ...]. git ls-tree (underlying the browser) accepts '.', so use that
as the value when in the root.

Signed-off-by: Mark Levedahl <mlevedahl@gmail.com>
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
maint
Mark Levedahl 2026-05-31 19:02:23 -04:00 committed by Johannes Sixt
parent 4f5114bfac
commit 7c7c7ba4ce
1 changed files with 5 additions and 1 deletions

View File

@ -2992,7 +2992,11 @@ proc normalize_relpath {path} {
}
lappend elements $item
}
return [eval file join $elements]
if {$elements ne {}} {
return [eval file join $elements]
} else {
return {.}
}
}

# -- Not a normal commit type invocation? Do that instead!