diff options
author | Jaehwang Jerry Jung <tomtomjhj@gmail.com> | 2019-10-25 19:54:53 +0900 |
---|---|---|
committer | Jaehwang Jerry Jung <tomtomjhj@gmail.com> | 2019-10-27 03:35:19 +0900 |
commit | 034077ed1c1fa71aa15829ed2dfb27de4a5e5359 (patch) | |
tree | 9f819d83c0c5848e51972c098ce85fce68b39be4 /src/nvim/eval.c | |
parent | 19ba36d0e1bb4ef28f8aa92c7386345fbcf78cf2 (diff) | |
download | rneovim-034077ed1c1fa71aa15829ed2dfb27de4a5e5359.tar.gz rneovim-034077ed1c1fa71aa15829ed2dfb27de4a5e5359.tar.bz2 rneovim-034077ed1c1fa71aa15829ed2dfb27de4a5e5359.zip |
vim-patch:8.1.2173: searchit() has too many arguments
Problem: Searchit() has too many arguments.
Solution: Move optional arguments to a struct. Add the "wrapped" argument.
https://github.com/vim/vim/commit/92ea26b925a0835badb0af2d5887238a4198cabb
Diffstat (limited to 'src/nvim/eval.c')
-rw-r--r-- | src/nvim/eval.c | 13 |
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; |