summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/opcache/zend_accelerator_blacklist.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/opcache/zend_accelerator_blacklist.c b/ext/opcache/zend_accelerator_blacklist.c
index 46d50cf96d..8b8c9b0d37 100644
--- a/ext/opcache/zend_accelerator_blacklist.c
+++ b/ext/opcache/zend_accelerator_blacklist.c
@@ -184,6 +184,13 @@ static void zend_accel_blacklist_update_regexp(zend_blacklist *blacklist)
blacklist_report_regexp_error((char *)pcre_error, pcre_error_offset);
return;
}
+#ifdef HAVE_PCRE_JIT_SUPPORT
+ if (0 > pcre2_jit_compile(it->re, PCRE2_JIT_COMPLETE)) {
+ /* Don't return here, even JIT could fail to compile, the pattern is still usable. */
+ pcre2_get_error_message(errnumber, pcre_error, sizeof(pcre_error));
+ zend_accel_error(ACCEL_LOG_WARNING, "Blacklist JIT compilation failed, %s\n", pcre_error);
+ }
+#endif
/* prepare for the next iteration */
p = regexp + 2;
*regexp_list_it = it;