mirror of
https://github.com/neovim/neovim.git
synced 2025-09-15 07:48:18 +00:00
Use vim_strchr(s, c) when c may be NUL (#6656)
As part of the refactoring in #5119, some vim_strchr() were changed to strchr(). However, vim_strchr() behaves differently than strchr() when c is NUL, returning NULL instead of a pointer to the NUL. Revert the strchr() calls where it isn't known whether c is NUL, since this causes a semantic change the surrounding code doesn't expect. In the case of #6650, this led to a heap overrun. Closes #6650
This commit is contained in:

committed by
Justin M. Keyes

parent
08b23d0806
commit
de50c003d5
@@ -584,7 +584,7 @@ static int command_line_execute(VimState *state, int key)
|
||||
}
|
||||
if (vim_ispathsep(ccline.cmdbuff[s->j])
|
||||
#ifdef BACKSLASH_IN_FILENAME
|
||||
&& strchr(" *?[{`$%#", ccline.cmdbuff[s->j + 1])
|
||||
&& vim_strchr(" *?[{`$%#", ccline.cmdbuff[s->j + 1])
|
||||
== NULL
|
||||
#endif
|
||||
) {
|
||||
|
Reference in New Issue
Block a user