forked from aniani/vim
patch 8.1.0192: executing regexp recursively fails with a crash
Problem: Executing regexp recursively fails with a crash. Solution: Move global variables into "rex".
This commit is contained in:
405
src/regexp.c
405
src/regexp.c
File diff suppressed because it is too large
Load Diff
11
src/regexp.h
11
src/regexp.h
@@ -50,8 +50,9 @@ typedef struct regprog
|
||||
{
|
||||
regengine_T *engine;
|
||||
unsigned regflags;
|
||||
unsigned re_engine; /* automatic, backtracking or nfa engine */
|
||||
unsigned re_flags; /* second argument for vim_regcomp() */
|
||||
unsigned re_engine; // automatic, backtracking or nfa engine
|
||||
unsigned re_flags; // second argument for vim_regcomp()
|
||||
int re_in_use; // prog is being executed
|
||||
} regprog_T;
|
||||
|
||||
/*
|
||||
@@ -65,7 +66,8 @@ typedef struct
|
||||
regengine_T *engine;
|
||||
unsigned regflags;
|
||||
unsigned re_engine;
|
||||
unsigned re_flags; /* second argument for vim_regcomp() */
|
||||
unsigned re_flags;
|
||||
int re_in_use;
|
||||
|
||||
int regstart;
|
||||
char_u reganch;
|
||||
@@ -101,7 +103,8 @@ typedef struct
|
||||
regengine_T *engine;
|
||||
unsigned regflags;
|
||||
unsigned re_engine;
|
||||
unsigned re_flags; /* second argument for vim_regcomp() */
|
||||
unsigned re_flags;
|
||||
int re_in_use;
|
||||
|
||||
nfa_state_T *start; /* points into state[] */
|
||||
|
||||
|
429
src/regexp_nfa.c
429
src/regexp_nfa.c
File diff suppressed because it is too large
Load Diff
@@ -789,6 +789,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
192,
|
||||
/**/
|
||||
191,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user