completion: simplify prefix path component handling during path completion
Once upon a time 'git -C "" cmd' errored out with "Cannot change to '': No such file or directory", therefore the completion script took extra steps to run 'git -C "." cmd' instead; seemaintfca416a41e
(completion: use "git -C $there" instead of (cd $there && git ...), 2014-10-09). Those extra steps are not needed since6a536e2076
(git: treat "git -C '<path>'" as a no-op when <path> is empty, 2015-03-06), so remove them. While at it, also simplify how the trailing '/' is appended to the variable holding the prefix path components. Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
parent
722e31c713
commit
6bf0ced4e2
|
@ -387,7 +387,7 @@ __git_ls_files_helper ()
|
|||
# slash.
|
||||
__git_index_files ()
|
||||
{
|
||||
local root="${2-.}" file
|
||||
local root="$2" file
|
||||
|
||||
__git_ls_files_helper "$root" "$1" |
|
||||
while read -r file; do
|
||||
|
@ -408,13 +408,12 @@ __git_complete_index_file ()
|
|||
|
||||
case "$cur_" in
|
||||
?*/*)
|
||||
pfx="${cur_%/*}"
|
||||
pfx="${cur_%/*}/"
|
||||
cur_="${cur_##*/}"
|
||||
pfx="${pfx}/"
|
||||
;;
|
||||
esac
|
||||
|
||||
__gitcomp_file "$(__git_index_files "$1" ${pfx:+"$pfx"})" "$pfx" "$cur_"
|
||||
__gitcomp_file "$(__git_index_files "$1" "$pfx")" "$pfx" "$cur_"
|
||||
}
|
||||
|
||||
# Lists branches from the local repository.
|
||||
|
|
Loading…
Reference in New Issue