$ sysctl -n kern.version ; pkg_info -m | grep neovim
OpenBSD 6.9-current (GENERIC.MP) #124: Sat Jul 10 22:50:17 MDT 2021
[email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
neovim-0.4.4 continuation and extension of Vim
py3-neovim-0.4.1p0 Python plugin support for Neovim
neovim segfaults when I open distrib/miniroot/install.sub (unmodified
revision 1.1167), search for "resolv.conf" and hit "n" five times.
No other search pattern or file has reproduced it for me (very odd given
the time and context).
To exclude personal configuration, here is a reproducer:
$ echo nnnnn | nvim -u NORC -i NONE +/resolv.conf -s /dev/stdin
install.sub
Segmentation fault (core dumped)
Using `-u NONE' or `-u NORC --clean' instead of `-u NORC' fixes it.
Using `-u NORC --noplugin' does not fix it.
Adding `--cmd "set re=1"' to the mix changes the behaviour of the
aforementioned combinations.
The backtrace is always the same.
$ egdb -q -batch -ex bt nvim nvim.core
[New process 102623]
[New process 378025]
Core was generated by `nvim'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 strchr () at /usr/src/lib/libc/arch/amd64/string/strchr.S:115
115 movq (%rdi),%rax /* aligned word containing
first data */
[Current thread is 1 (process 102623)]
#0 strchr () at /usr/src/lib/libc/arch/amd64/string/strchr.S:115
#1 0xf5c32a474811b79e in ?? ()
#2 0x000008f1510bb8d0 in bt_regexec_both ()
#3 0x000008f1510ade1e in vim_regexec_multi ()
#4 0x000008f15114ee0d in syn_regexec ()
#5 0x000008f15114f302 in find_endpos ()
#6 0x000008f15114ea65 in update_si_end ()
#7 0x000008f151146c6f in syntax_start ()
#8 0x000008f1510f076f in win_line ()
#9 0x000008f1510e80d4 in win_update ()
#10 0x000008f1510e48d8 in update_screen ()
#11 0x000008f15105eeea in normal_check.llvm ()
#12 0x000008f151141e41 in state_enter ()
#13 0x000008f151009a75 in main ()
I have little time at hand to look into this further but will try to
pick it up later.
Perhaps someone else can reproduce or even pin this down before me.