-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
Environment
fish --version
fish, version 3.1.2
uname -a
Linux archvm 5.8.10-arch1-1 #1 SMP PREEMPT Thu, 17 Sep 2020 18:01:06 +0000 x86_64 GNU/Linux
echo $PATH
/usr/local/sbin /usr/local/bin /usr/bin /usr/bin/site_perl /usr/bin/vendor_perl /usr/bin/core_perl
alias -s
alias vim 'FOO= vim'
Background
I'm a new user of fish, and I'm converting my bash aliases to be in config.fish.
I copied an alias for vim, even though it isn't installed (I use neovim). The alias is recursive, but I didn't bother to change it because, again, vim isn't installed.
Doing any tab completion for a nvim command results in a crash.
Steps to reproduce
- Install neovim.
- Do not have vim installed vim.
- Create this alias (that's been simplified from my original)
alias vim 'FOO= vim' - In fish, at $HOME, type
nvim .cothen TAB to attempt tab completion.
Outcome
The shell appears to freeze for about a second, then it crashes. This is printed if it was opened from another shell:
fish: 'fish' terminated by signal SIGSEGV (Address boundary error)
strace
An strace has this repeated for over 20,000 lines
access("/usr/local/sbin/vim", X_OK) = -1 ENOENT (No such file or directory)
access("/usr/local/bin/vim", X_OK) = -1 ENOENT (No such file or directory)
access("/usr/bin/vim", X_OK) = -1 ENOENT (No such file or directory)
access("/usr/bin/site_perl/vim", X_OK) = -1 ENOENT (No such file or directory)
access("/usr/bin/vendor_perl/vim", X_OK) = -1 ENOENT (No such file or directory)
access("/usr/bin/core_perl/vim", X_OK) = -1 ENOENT (No such file or directory)
Before finally printing this
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x7ffcfd9b3fe8} ---
+++ killed by SIGSEGV (core dumped) +++