summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2013-06-06 18:04:51 +0200
committerBram Moolenaar <Bram@vim.org>2013-06-06 18:04:51 +0200
commit6d3a5d755a71f6df472c82ed4e619a8497a75f14 (patch)
tree1dee352847acff660d7b0f7471d1771a7b3c4343
parent188c57bcd180ea88911e3083920246c8b28b1ce7 (diff)
downloadvim-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.c6
-rw-r--r--src/regexp_nfa.c5
-rw-r--r--src/version.c2
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,