From: Junio C Hamano Date: Mon, 11 Jun 2018 17:04:50 GMT Subject: Re: [PATCH] Use ZSH_NAME instead of ZSH_VERSION because it's redefined by git-completion.zsh Message-ID: In-Reply-To: Junio C Hamano writes: > Rick van Hattem 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.