git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: ZSH segmentation fault while completing "git mv dir/"

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Apr 1, 2013, 10:11 UTC
Message-ID
<CAMP44s3ocY7qpESHCDRdHJBsH1DV+k1Z5OwSqsWndMZd_s6oBQ@mail.gmail.com>
In-Reply-To
<vpqwqtdkq9z.fsf@grenoble-inp.fr>

On Tue, Mar 12, 2013 at 1:53 AM, Matthieu Moy <Matthieu.Moy@grenoble-inp.fr> wrote:

Show 10 quoted lines
> If I add a simple 'echo "$cur" >&2' instead of the case, the problem
> reappears. Somehow, the fact that I'm accessing $cur seems to create the
> segfault. Actually, the minimalistic _git_mv reproducing the problem is:
>
> _git_mv ()
> {
>         echo "$cur"
>         [ $(__git_count_arguments "mv") = 1 ]
>         __git_complete_index_file "--cached --others --directory"
> }
I managed to reproduce the issue, and to me, this is enough:

_git_mv () { __gitcomp_file 'bar.txt' 'foo/' }

And this is a workaround:
--- a/contrib/completion/git-completion.zsh
+++ b/contrib/completion/git-completion.zsh
@@ -66,7 +66,7 @@ __gitcomp_file ()

        local IFS=$'\n'
        compset -P '*[=:]'
-       compadd -Q -p "${2-}" -f -- ${=1} && _ret=0
+       compadd -Q -p "${2-}" -- ${=1} && _ret=0
 }

 _git ()

Cheers.

--
Felipe Contreras
Previous: Matthieu MoyNext: Matthieu Moy
Message 7 of 12 in “ZSH segmentation fault while completing "git mv dir/"”
  1. Matthieu MoyMar 11, 2013
  2. Manlio PerilloMar 11, 2013
  3. Matthieu MoyMar 11, 2013
  4. Manlio PerilloMar 11, 2013
  5. Jeff EplerMar 12, 2013
  6. Matthieu MoyMar 12, 2013
  7. Felipe ContrerasApr 1, 2013
  8. Matthieu MoyApr 2, 2013
  9. Junio C HamanoApr 2, 2013
  10. Matthieu MoyApr 2, 2013
  11. Manlio PerilloApr 2, 2013
  12. Matthieu MoyApr 3, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.