aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2019-10-26 12:50:51 -0700
committerGitHub <noreply@github.com>2019-10-26 12:50:51 -0700
commitad532d3c660791337a9ea5100ab1e330480e382a (patch)
tree6142d4a147f26451a8679d441930f7691cecfdc3 /src/nvim/eval.c
parent4b5e2f7a0b275230456f92892a89c781616284a8 (diff)
parent6dcc1d100572b462f75f64f7e98a0b5d80144cba (diff)
downloadrneovim-ad532d3c660791337a9ea5100ab1e330480e382a.tar.gz
rneovim-ad532d3c660791337a9ea5100ab1e330480e382a.tar.bz2
rneovim-ad532d3c660791337a9ea5100ab1e330480e382a.zip
Merge #11294 from tomtomjhj/vim-8.1.2173
vim-patch:8.1.{2173,2207,2218}
Diffstat (limited to 'src/nvim/eval.c')
-rw-r--r--src/nvim/eval.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 71ffb26cc2..fd83bc846b 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -14617,6 +14617,7 @@ static int search_cmn(typval_T *argvars, pos_T *match_pos, int *flagsp)
long time_limit = 0;
int options = SEARCH_KEEP;
int subpatnum;
+ searchit_arg_T sia;
const char *const pat = tv_get_string(&argvars[0]);
dir = get_search_arg(&argvars[1], flagsp); // May set p_ws.
@@ -14664,8 +14665,11 @@ static int search_cmn(typval_T *argvars, pos_T *match_pos, int *flagsp)
}
pos = save_cursor = curwin->w_cursor;
+ memset(&sia, 0, sizeof(sia));
+ sia.sa_stop_lnum = (linenr_T)lnum_stop;
+ sia.sa_tm = &tm;
subpatnum = searchit(curwin, curbuf, &pos, NULL, dir, (char_u *)pat, 1,
- options, RE_SEARCH, (linenr_T)lnum_stop, &tm, NULL);
+ options, RE_SEARCH, &sia);
if (subpatnum != FAIL) {
if (flags & SP_SUBPAT)
retval = subpatnum;
@@ -15237,8 +15241,13 @@ do_searchpair(
clearpos(&foundpos);
pat = pat3;
for (;; ) {
+ searchit_arg_T sia;
+ memset(&sia, 0, sizeof(sia));
+ sia.sa_stop_lnum = lnum_stop;
+ sia.sa_tm = &tm;
+
n = searchit(curwin, curbuf, &pos, NULL, dir, pat, 1L,
- options, RE_SEARCH, lnum_stop, &tm, NULL);
+ options, RE_SEARCH, &sia);
if (n == FAIL || (firstpos.lnum != 0 && equalpos(pos, firstpos))) {
// didn't find it or found the first match again: FAIL
break;