diff options
author | Bram Moolenaar <Bram@vim.org> | 2018-07-17 05:43:58 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2018-07-17 05:43:58 +0200 |
commit | 0270f38e1ae484c31a80c813a08691c47a207f1a (patch) | |
tree | 19fcfdfcfc33b58f974666c21b9f54620d3f220f /src/regexp.h | |
parent | 3166afd945e57f04b231e71e054b9593cc29ff0b (diff) | |
download | vim-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.h | 11 |
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[] */ |