diff options
author | Bram Moolenaar <Bram@vim.org> | 2013-06-06 18:04:51 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2013-06-06 18:04:51 +0200 |
commit | 6d3a5d755a71f6df472c82ed4e619a8497a75f14 (patch) | |
tree | 1dee352847acff660d7b0f7471d1771a7b3c4343 | |
parent | 188c57bcd180ea88911e3083920246c8b28b1ce7 (diff) | |
download | vim-git-6d3a5d755a71f6df472c82ed4e619a8497a75f14.tar.gz |
updated for version 7.3.1132v7.3.1132
Problem: Crash when debugging regexp.
Solution: Do not try to dump subexpr that were not set. Skip over count of
\% items.
-rw-r--r-- | src/regexp.c | 6 | ||||
-rw-r--r-- | src/regexp_nfa.c | 5 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 11 insertions, 2 deletions
diff --git a/src/regexp.c b/src/regexp.c index 741978e57..ae29ef53b 100644 --- a/src/regexp.c +++ b/src/regexp.c @@ -6548,6 +6548,12 @@ regdump(pattern, r) fprintf(f, " count %ld", OPERAND_MIN(s)); s += 4; } + else if (op == RE_LNUM || op == RE_COL || op == RE_VCOL) + { + /* one int plus comperator */ + fprintf(f, " count %ld", OPERAND_MIN(s)); + s += 5; + } s += 3; if (op == ANYOF || op == ANYOF + ADD_NL || op == ANYBUT || op == ANYBUT + ADD_NL diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c index 36968cf24..ea74a8d4c 100644 --- a/src/regexp_nfa.c +++ b/src/regexp_nfa.c @@ -256,7 +256,7 @@ static int nfa_alt_listid; /* 0 for first call to nfa_regmatch(), 1 for recursive call. */ static int nfa_ll_index = 0; -static int nfa_regcomp_start __ARGS((char_u*expr, int re_flags)); +static int nfa_regcomp_start __ARGS((char_u *expr, int re_flags)); static int nfa_recognize_char_class __ARGS((char_u *start, char_u *end, int extra_newl)); static int nfa_emit_equi_class __ARGS((int c, int neg)); static int nfa_regatom __ARGS((void)); @@ -2927,7 +2927,8 @@ log_subsexpr(subs) { log_subexpr(&subs->norm); # ifdef FEAT_SYN_HL - log_subexpr(&subs->synt); + if (nfa_has_zsubexpr) + log_subexpr(&subs->synt); # endif } diff --git a/src/version.c b/src/version.c index 440f59a6c..d29c15c63 100644 --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1132, +/**/ 1131, /**/ 1130, |