summaryrefslogtreecommitdiff
path: root/src/regexp.h
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2018-07-17 05:43:58 +0200
committerBram Moolenaar <Bram@vim.org>2018-07-17 05:43:58 +0200
commit0270f38e1ae484c31a80c813a08691c47a207f1a (patch)
tree19fcfdfcfc33b58f974666c21b9f54620d3f220f /src/regexp.h
parent3166afd945e57f04b231e71e054b9593cc29ff0b (diff)
downloadvim-git-0270f38e1ae484c31a80c813a08691c47a207f1a.tar.gz
patch 8.1.0192: executing regexp recursively fails with a crashv8.1.0192
Problem: Executing regexp recursively fails with a crash. Solution: Move global variables into "rex".
Diffstat (limited to 'src/regexp.h')
-rw-r--r--src/regexp.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/regexp.h b/src/regexp.h
index a3526e697..fa3ff42dc 100644
--- a/src/regexp.h
+++ b/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[] */