aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nvim/search.c4
-rw-r--r--src/nvim/testdir/test_search_stat.vim25
2 files changed, 27 insertions, 2 deletions
diff --git a/src/nvim/search.c b/src/nvim/search.c
index 2a14afd762..62e1338496 100644
--- a/src/nvim/search.c
+++ b/src/nvim/search.c
@@ -4237,8 +4237,8 @@ static void search_stat(int dirc, pos_T *pos,
p_ws = false;
start = profile_setlimit(20L);
while (!got_int && searchit(curwin, curbuf, &lastpos, NULL,
- FORWARD, NULL, 1, SEARCH_PEEK + SEARCH_KEEP,
- RE_LAST, (linenr_T)0, NULL, NULL) != FAIL) {
+ FORWARD, NULL, 1, SEARCH_KEEP, RE_LAST,
+ (linenr_T)0, NULL, NULL) != FAIL) {
// Stop after passing the time limit.
if (profile_passed_limit(start)) {
cnt = OUT_OF_TIME;
diff --git a/src/nvim/testdir/test_search_stat.vim b/src/nvim/testdir/test_search_stat.vim
index 57dad81b81..107cd54a0e 100644
--- a/src/nvim/testdir/test_search_stat.vim
+++ b/src/nvim/testdir/test_search_stat.vim
@@ -8,6 +8,7 @@ source shared.vim
func! Test_search_stat()
new
set shortmess-=S
+ " Append 50 lines with text to search for, "foobar" appears 20 times
call append(0, repeat(['foobar', 'foo', 'fooooobar', 'foba', 'foobar'], 10))
" 1) match at second line
@@ -105,6 +106,30 @@ func! Test_search_stat()
call assert_false(1)
endtry
+ " 11) normal, n comes from a mapping
+ " Need to move over more than 64 lines to trigger char_avail(.
+ nnoremap n nzv
+ call cursor(1,1)
+ call append(50, repeat(['foobar', 'foo', 'fooooobar', 'foba', 'foobar'], 10))
+ call setline(2, 'find this')
+ call setline(70, 'find this')
+ let @/ = 'find this'
+ let pat = '/find this\s\+'
+ let g:a = execute(':unsilent :norm n')
+ " g:a will contain several lines
+ let g:b = split(g:a, "\n")[-1]
+ let stat = '\[1/2\]'
+ call assert_match(pat .. stat, g:b)
+ unmap n
+
+ " 11) normal, but silent
+ call cursor(1,1)
+ let @/ = 'find this'
+ let pat = '/find this\s\+'
+ let g:a = execute(':norm! n')
+ let stat = '\[1/2\]'
+ call assert_notmatch(pat .. stat, g:a)
+
" close the window
set shortmess+=S
bwipe!