diff options
author | zherczeg <zherczeg@2f5784b3-3f2a-0410-8824-cb99058d5e15> | 2015-06-25 04:02:53 +0000 |
---|---|---|
committer | zherczeg <zherczeg@2f5784b3-3f2a-0410-8824-cb99058d5e15> | 2015-06-25 04:02:53 +0000 |
commit | 8a3ba39428c3e7ab11f1143992b1b51dd4a5c497 (patch) | |
tree | 81b874e6eee2a9e167bb545c0f5ad78931897fe9 /pcre_jit_compile.c | |
parent | 764692f9aea9eab50fdba6cb537441d8b34c6c37 (diff) | |
download | pcre-8a3ba39428c3e7ab11f1143992b1b51dd4a5c497.tar.gz |
Minor JIT fixes.
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1572 2f5784b3-3f2a-0410-8824-cb99058d5e15
Diffstat (limited to 'pcre_jit_compile.c')
-rw-r--r-- | pcre_jit_compile.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/pcre_jit_compile.c b/pcre_jit_compile.c index debdf6e..6aedcec 100644 --- a/pcre_jit_compile.c +++ b/pcre_jit_compile.c @@ -1071,7 +1071,7 @@ while (cc < ccend) size = 0; bracketlen = 0; if (private_data_ptr > SLJIT_MAX_LOCAL_SIZE) - return; + break; if (*cc == OP_ONCE || *cc == OP_ONCE_NC || *cc == OP_BRA || *cc == OP_CBRA || *cc == OP_COND) if (detect_repeat(common, cc)) @@ -1162,12 +1162,17 @@ while (cc < ccend) size = 1; break; - CASE_ITERATOR_TYPE_PRIVATE_DATA_2B + case OP_TYPEUPTO: if (cc[1 + IMM2_SIZE] != OP_ANYNL && cc[1 + IMM2_SIZE] != OP_EXTUNI) space = 2; size = 1 + IMM2_SIZE; break; + case OP_TYPEMINUPTO: + space = 2; + size = 1 + IMM2_SIZE; + break; + case OP_CLASS: case OP_NCLASS: size += 1 + 32 / sizeof(pcre_uchar); |