forked from aniani/vim
updated for version 7.3.1132
Problem: Crash when debugging regexp. Solution: Do not try to dump subexpr that were not set. Skip over count of \% items.
This commit is contained in:
@@ -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
|
||||
|
@@ -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,6 +2927,7 @@ log_subsexpr(subs)
|
||||
{
|
||||
log_subexpr(&subs->norm);
|
||||
# ifdef FEAT_SYN_HL
|
||||
if (nfa_has_zsubexpr)
|
||||
log_subexpr(&subs->synt);
|
||||
# endif
|
||||
}
|
||||
|
@@ -728,6 +728,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
1132,
|
||||
/**/
|
||||
1131,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user