1
0
forked from aniani/vim

patch 8.0.0643: when a pattern search is slow Vim becomes unusable

Problem:    When 'hlsearch' is set and matching with the last search pattern
            is very slow, Vim becomes unusable.  Cannot quit search by
            pressing CTRL-C.
Solution:   When the search times out set a flag and don't try again.  Check
            for timeout and CTRL-C in NFA loop that adds states.
This commit is contained in:
Bram Moolenaar
2017-06-17 18:44:21 +02:00
parent 8cf91286ca
commit fbd0b0af68
19 changed files with 124 additions and 68 deletions

View File

@@ -2415,7 +2415,7 @@ win_found:
save_cursor = curwin->w_cursor;
curwin->w_cursor.lnum = 0;
if (!do_search(NULL, '/', qf_ptr->qf_pattern, (long)1,
SEARCH_KEEP, NULL))
SEARCH_KEEP, NULL, NULL))
curwin->w_cursor = save_cursor;
}
@@ -4237,7 +4237,7 @@ ex_vimgrep(exarg_T *eap)
{
col = 0;
while (vim_regexec_multi(&regmatch, curwin, buf, lnum,
col, NULL) > 0)
col, NULL, NULL) > 0)
{
/* Pass the buffer number so that it gets used even for a
* dummy buffer, unless duplicate_name is set, then the