vim-patch:8.1.0098: segfault when pattern with \z() is very slow (#9283)

Problem:    Segfault when pattern with \z() is very slow.
Solution:   Check for NULL regprog.  Add "nfa_fail" to test_override() to be
            able to test this.  Fix that 'searchhl' resets called_emsg.
bcf9442307

closes #8788
This commit is contained in:
Justin M. Keyes
2018-11-29 01:51:26 +01:00
committed by GitHub
parent 98eaf60a98
commit 5a752c97d5
6 changed files with 63 additions and 32 deletions

View File

@@ -5603,6 +5603,7 @@ next_search_hl (
linenr_T l;
colnr_T matchcol;
long nmatched = 0;
int save_called_emsg = called_emsg;
if (shl->lnum != 0) {
/* Check for three situations:
@@ -5695,6 +5696,9 @@ next_search_hl (
shl->lnum += shl->rm.startpos[0].lnum;
break; /* useful match found */
}
// Restore called_emsg for assert_fails().
called_emsg = save_called_emsg;
}
}