aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/regexp_nfa.c
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2015-12-01 11:54:54 -0500
committerJustin M. Keyes <justinkz@gmail.com>2015-12-01 11:54:54 -0500
commit84da3e6bbbea89765c1218a8659304823c7045e0 (patch)
tree14a0226984fb5c38c15b12e7a8c9bedc5c3a3416 /src/nvim/regexp_nfa.c
parent64a9972e7c73f61d6067f7824eb782e5a59739bd (diff)
parent798fe6cfa35b96ac14c0682e93567fa32123048c (diff)
downloadrneovim-84da3e6bbbea89765c1218a8659304823c7045e0.tar.gz
rneovim-84da3e6bbbea89765c1218a8659304823c7045e0.tar.bz2
rneovim-84da3e6bbbea89765c1218a8659304823c7045e0.zip
Merge pull request #3760 from Shougo/vim-7.4.623
vim-patch:7.4.623
Diffstat (limited to 'src/nvim/regexp_nfa.c')
-rw-r--r--src/nvim/regexp_nfa.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/nvim/regexp_nfa.c b/src/nvim/regexp_nfa.c
index fa356da5b9..b96dcc66b3 100644
--- a/src/nvim/regexp_nfa.c
+++ b/src/nvim/regexp_nfa.c
@@ -1897,9 +1897,10 @@ static int nfa_regpiece(void)
return OK;
}
- // The engine is very inefficient (uses too many states) when the maximum is
- // much larger than the minimum. Bail out if we can use the other engine.
- if ((nfa_re_flags & RE_AUTO) && maxval > minval + 200) {
+ // The engine is very inefficient (uses too many states) when the maximum
+ // is much larger than the minimum and when the maximum is large. Bail out
+ // if we can use the other engine.
+ if ((nfa_re_flags & RE_AUTO) && (maxval > minval + 200 || maxval > 500)) {
return FAIL;
}