[PATCH] zsh completion: 5.0.3 compat, use emulate

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

 



The bash completion pulled into zsh was being pulled in _as_ zsh, but
used patterns which relied on falling through as unhandled.  In zsh
5.0.3 this no longer works, resulting in:

    __git_complete_remote_or_refspec:33: bad pattern: +*

Fix by telling zsh to emulate sh while sourcing the bash config file,
which stickily preserves compatibility options in the function context.
This usage of "emulate" came in with zsh 4.3.10, released 2009-06-01.

Signed-off-by: Phil Pennock <pdp@xxxxxxxxxxxx>
---
nb: I am not on the git mailing-list, please keep me CC'd.
    I have read SubmittingPatches but let me know if I've missed something.
    Fix applies (unmodified) to both master and maint.
    Thanks.

 contrib/completion/git-completion.zsh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/contrib/completion/git-completion.zsh b/contrib/completion/git-completion.zsh
index fac5e71..d898b65 100644
--- a/contrib/completion/git-completion.zsh
+++ b/contrib/completion/git-completion.zsh
@@ -39,7 +39,7 @@ if [ -z "$script" ]; then
 		test -f $e && script="$e" && break
 	done
 fi
-ZSH_VERSION='' . "$script"
+emulate sh -c 'ZSH_VERSION="" . "$script"'
 
 __gitcomp ()
 {
-- 
1.8.5.1

--
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




[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]