diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-11-26 21:28:47 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-26 21:28:47 +0800 |
commit | 7e9981d246a9d46f19dc6283664c229ae2efe727 (patch) | |
tree | 71a95ee120f0eb9cf3bcccd91eeaa0cdfc6c2115 /src/nvim/regexp.c | |
parent | 84465a8c1583f444d4365b2a70e03cd38ebe7f81 (diff) | |
download | rneovim-7e9981d246a9d46f19dc6283664c229ae2efe727.tar.gz rneovim-7e9981d246a9d46f19dc6283664c229ae2efe727.tar.bz2 rneovim-7e9981d246a9d46f19dc6283664c229ae2efe727.zip |
vim-patch:9.0.0951: trying every character position for a match is inefficient (#21198)
Problem: Trying every character position for a match is inefficient.
Solution: Use the start position of the match ignoring "\zs".
https://github.com/vim/vim/commit/01105b37a108022515d364201767f7f111ec4222
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'src/nvim/regexp.c')
-rw-r--r-- | src/nvim/regexp.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/nvim/regexp.c b/src/nvim/regexp.c index 95557a3469..0d3cb927e9 100644 --- a/src/nvim/regexp.c +++ b/src/nvim/regexp.c @@ -958,10 +958,12 @@ static unsigned reg_tofreelen; typedef struct { regmatch_T *reg_match; regmmatch_T *reg_mmatch; + char_u **reg_startp; char_u **reg_endp; lpos_T *reg_startpos; lpos_T *reg_endpos; + win_T *reg_win; buf_T *reg_buf; linenr_T reg_firstlnum; |