From bb7943b7920ef2f88cb9b6f46c34c7946c370819 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Mon, 5 Jun 2017 13:30:06 +0200 Subject: patch 8.0.0618: NFA regex engine handles [0-z] incorrectly Problem: NFA regex engine handles [0-z] incorrectly. Solution: Return at the right point. (James McCoy, closes #1703) --- src/regexp_nfa.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/regexp_nfa.c') diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c index 120861a46..c490acb71 100644 --- a/src/regexp_nfa.c +++ b/src/regexp_nfa.c @@ -628,37 +628,39 @@ nfa_recognize_char_class(char_u *start, char_u *end, int extra_newl) config |= CLASS_o9; break; } - else if (*(p + 2) == '7') { config |= CLASS_o7; break; } + return FAIL; + case 'a': if (*(p + 2) == 'z') { config |= CLASS_az; break; } - else if (*(p + 2) == 'f') { config |= CLASS_af; break; } + return FAIL; + case 'A': if (*(p + 2) == 'Z') { config |= CLASS_AZ; break; } - else if (*(p + 2) == 'F') { config |= CLASS_AF; break; } - /* FALLTHROUGH */ + return FAIL; + default: return FAIL; } -- cgit v1.2.3