summaryrefslogtreecommitdiff
path: root/src/pcre2_intmodedep.h
diff options
context:
space:
mode:
authorph10 <ph10@6239d852-aaf2-0410-a92c-79f79f948069>2017-10-29 16:58:38 +0000
committerph10 <ph10@6239d852-aaf2-0410-a92c-79f79f948069>2017-10-29 16:58:38 +0000
commit3e7c0f7d4d797ade557568e703241230d0456a92 (patch)
treebfd8bb90eab6d793b179ded6d9c995f599859d09 /src/pcre2_intmodedep.h
parent1e460a50640cebab6fd2679a2e1149dff82a0838 (diff)
downloadpcre2-3e7c0f7d4d797ade557568e703241230d0456a92.tar.gz
Fix oss-fuzz bugs 3852 and 3891 (same bug); mis-closing external captures by
*ACCEPT inside assertions. git-svn-id: svn://vcs.exim.org/pcre2/code/trunk@876 6239d852-aaf2-0410-a92c-79f79f948069
Diffstat (limited to 'src/pcre2_intmodedep.h')
-rw-r--r--src/pcre2_intmodedep.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/pcre2_intmodedep.h b/src/pcre2_intmodedep.h
index 387f65e..ad67060 100644
--- a/src/pcre2_intmodedep.h
+++ b/src/pcre2_intmodedep.h
@@ -723,6 +723,8 @@ typedef struct compile_block {
PCRE2_SIZE erroroffset; /* Offset of error in pattern */
uint16_t names_found; /* Number of entries so far */
uint16_t name_entry_size; /* Size of each entry */
+ uint16_t parens_depth; /* Depth of nested parentheses */
+ uint16_t assert_depth; /* Depth of nested assertions */
open_capitem *open_caps; /* Chain of open capture items */
named_group *named_groups; /* Points to vector in pre-compile */
uint32_t named_group_list_size; /* Number of entries in the list */
@@ -741,8 +743,6 @@ typedef struct compile_block {
uint32_t class_range_end; /* Overall class range end */
PCRE2_UCHAR nl[4]; /* Newline string when fixed length */
int max_lookbehind; /* Maximum lookbehind (characters) */
- int parens_depth; /* Depth of nested parentheses */
- int assert_depth; /* Depth of nested assertions */
int req_varyopt; /* "After variable item" flag for reqbyte */
BOOL had_accept; /* (*ACCEPT) encountered */
BOOL had_pruneorskip; /* (*PRUNE) or (*SKIP) encountered */