}/*}}}*/
#define PHP_PCRE_DEFAULT_EXTRA_COPTIONS PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL
+#define PHP_PCRE_PREALLOC_MDATA_SIZE 32
static void php_pcre_init_pcre2(uint8_t jit)
{/*{{{*/
#endif
if (!mdata) {
- mdata = pcre2_match_data_create(32, gctx);
+ mdata = pcre2_match_data_create(PHP_PCRE_PREALLOC_MDATA_SIZE, gctx);
if (!mdata) {
pcre2_init_ok = 0;
}
rc = pcre2_pattern_info(re, PCRE2_INFO_CAPTURECOUNT, &capture_count);
}
- if (rc >= 0 && (capture_count + 1) * 3 <= 32) {
+ if (rc >= 0 && (capture_count + 1) * 3 <= PHP_PCRE_PREALLOC_MDATA_SIZE) {
return mdata;
}
}
#endif
- if (!mdata_used && size_offsets <= 32) {
+ if (!mdata_used && size_offsets <= PHP_PCRE_PREALLOC_MDATA_SIZE) {
match_data = mdata;
} else {
match_data = pcre2_match_data_create_from_pattern(pce->re, gctx);
}
#endif
- if (!mdata_used && size_offsets <= 32) {
+ if (!mdata_used && size_offsets <= PHP_PCRE_PREALLOC_MDATA_SIZE) {
match_data = mdata;
} else {
match_data = pcre2_match_data_create_from_pattern(pce->re, gctx);
#endif
old_mdata_used = mdata_used;
- if (!old_mdata_used && size_offsets <= 32) {
+ if (!old_mdata_used && size_offsets <= PHP_PCRE_PREALLOC_MDATA_SIZE) {
mdata_used = 1;
match_data = mdata;
} else {
}
#endif
- if (!mdata_used && size_offsets <= 32) {
+ if (!mdata_used && size_offsets <= PHP_PCRE_PREALLOC_MDATA_SIZE) {
match_data = mdata;
} else {
match_data = pcre2_match_data_create_from_pattern(pce->re, gctx);
PCRE_G(error_code) = PHP_PCRE_NO_ERROR;
- if (!mdata_used && size_offsets <= 32) {
+ if (!mdata_used && size_offsets <= PHP_PCRE_PREALLOC_MDATA_SIZE) {
match_data = mdata;
} else {
match_data = pcre2_match_data_create_from_pattern(pce->re, gctx);