Web lists-archives.com

Re: [PATCH] Use ZSH_NAME instead of ZSH_VERSION because it's redefined by git-completion.zsh




Junio C Hamano <gitster@xxxxxxxxx> writes:

> Rick van Hattem <wolph@xxxxxx> writes:
>
>> The `git-completion.zsh` unsets the `$ZSH_VERSION` which makes this check moot. The result (at least for me) is that zsh segfaults because of all the variables it's unsetting.
>> ---
>
> Overlong line, lack of sign-off.
>
>>  # Clear the variables caching builtins' options when (re-)sourcing
>>  # the completion script.
>> -if [[ -n ${ZSH_VERSION-} ]]; then
>> +if [[ -n ${ZSH_NAME-} ]]; then
>
>       ...
>         ZSH_VERSION='' . "$script"
> 	...
>
> If your ZSH_VERSION is empty, doesn't it indicate that the script
> did not find a usable git-completion.bash script (to which it
> outsources the bulk of the completion work)?

Ah, I was totally mis-reading the script (and partly was confused by
your use of "unset").  ZSH_VERSION is reset to an empty string,
which breaks the check later done in the bash completion script.