[PATCH] contrib/completion: fix remote completion for "git push/remote"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



If __git_cmd_idx is empty then zsh will silelntly fail to
complete remotes when doing "git push <tab>".

Ensure that __git_cmd_idx is non-empty before using it in
__git_complete_remote_or_refspec.

This was tested on zsh 5.7.1 (x86_64-apple-darwin19.0).
Other versions of zsh, eg. zsh 5.0.2 (x86_64-redhat-linux-gnu),
do not exhibit this behavior.

Signed-off-by: David Aguilar <davvid@xxxxxxxxx>
---
Further testing of the completion behavior spotted this regression.

This should be applied on top of,
"contrib/completion: avoid empty arithemetic expressions".
and could arguably be squashed into that commit.

I have my zshrc setup to point directly to a git.git worktree and a recent
update seems to have caused these regressions.

 contrib/completion/git-completion.bash | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index d51ff5302d..bc1aea82bf 100644
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -1006,6 +1006,9 @@ __git_complete_revlist ()
 
 __git_complete_remote_or_refspec ()
 {
+	if [ -z "$__git_cmd_idx" ]; then
+		__git_cmd_idx=1
+	fi
 	local cur_="$cur" cmd="${words[__git_cmd_idx]}"
 	local i c=$((__git_cmd_idx+1)) remote="" pfx="" lhs=1 no_complete_refspec=0
 	if [ "$cmd" = "remote" ]; then
-- 
2.32.0.rc2.2.ga063d53b1a




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux