mirror of
https://github.com/neovim/neovim.git
synced 2025-10-05 17:36:29 +00:00
vim-patch:8.1.0555: crash when last search pat is set but not last substitute pat
Problem: Crash when last search pat is set but not last substitute pat.
Solution: Do not mix up last search pattern and last subtitute pattern.
(closes vim/vim#3647)
2fb8f684d8
This commit is contained in:
@@ -1179,7 +1179,7 @@ int do_search(
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (*searchstr == NUL) {
|
if (*searchstr == NUL) {
|
||||||
p = spats[last_idx].pat;
|
p = spats[0].pat;
|
||||||
} else {
|
} else {
|
||||||
p = searchstr;
|
p = searchstr;
|
||||||
}
|
}
|
||||||
|
@@ -982,6 +982,18 @@ func Test_search_sentence()
|
|||||||
/
|
/
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test that there is no crash when there is a last search pattern but no last
|
||||||
|
" substitute pattern.
|
||||||
|
func Test_no_last_substitute_pat()
|
||||||
|
" Use viminfo to set the last search pattern to a string and make the last
|
||||||
|
" substitute pattern the most recent used and make it empty (NULL).
|
||||||
|
call writefile(['~MSle0/bar', '~MSle0~&'], 'Xviminfo')
|
||||||
|
rviminfo! Xviminfo
|
||||||
|
call assert_fails('normal n', 'E35:')
|
||||||
|
|
||||||
|
call delete('Xviminfo')
|
||||||
|
endfunc
|
||||||
|
|
||||||
func Test_large_hex_chars1()
|
func Test_large_hex_chars1()
|
||||||
" This used to cause a crash, the character becomes an NFA state.
|
" This used to cause a crash, the character becomes an NFA state.
|
||||||
try
|
try
|
||||||
|
Reference in New Issue
Block a user