summaryrefslogtreecommitdiffstats
path: root/php-bug80682.patch
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2021-01-28 17:33:23 +0100
committerRemi Collet <remi@remirepo.net>2021-01-28 17:33:23 +0100
commite732fbb64f67e934fc9b8b7724a9de162c482247 (patch)
treebebe82330a9a08e6bc600527e6e8f62bc2d01f80 /php-bug80682.patch
parent893dcf7be45756c684164867115005f023c730a2 (diff)
add upstream patch for https://bugs.php.net/80682
fix opcache doesn't honour pcre.jit option
Diffstat (limited to 'php-bug80682.patch')
-rw-r--r--php-bug80682.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/php-bug80682.patch b/php-bug80682.patch
new file mode 100644
index 0000000..38f908b
--- /dev/null
+++ b/php-bug80682.patch
@@ -0,0 +1,30 @@
+From 067f7e4150d8f9bddf6b198c9c7826565ee549b0 Mon Sep 17 00:00:00 2001
+From: Remi Collet <remi@php.net>
+Date: Thu, 28 Jan 2021 16:24:39 +0100
+Subject: [PATCH] Fix #80682 opcache doesn't honour pcre.jit option
+
+---
+ ext/opcache/zend_accelerator_blacklist.c | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/ext/opcache/zend_accelerator_blacklist.c b/ext/opcache/zend_accelerator_blacklist.c
+index 889fcabd7988..5c6bd76821a5 100644
+--- a/ext/opcache/zend_accelerator_blacklist.c
++++ b/ext/opcache/zend_accelerator_blacklist.c
+@@ -185,10 +185,12 @@ static void zend_accel_blacklist_update_regexp(zend_blacklist *blacklist)
+ 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);
++ if (PCRE_G(jit)) {
++ 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 */