summaryrefslogtreecommitdiffstats
path: root/excimer-php84.patch
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2024-07-12 09:06:25 +0200
committerRemi Collet <remi@php.net>2024-07-12 09:06:25 +0200
commitad0b20709466ec5fe871e0c204155cf9c57d2d5e (patch)
tree5868af4cfadd7d0ef73f318bdcc494a3228a7494 /excimer-php84.patch
parent4d1cd8b93206da48534b60220a4b698185dedfc7 (diff)
add patch for PHP 8.4 from
https://github.com/wikimedia/mediawiki-php-excimer/pull/8
Diffstat (limited to 'excimer-php84.patch')
-rw-r--r--excimer-php84.patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/excimer-php84.patch b/excimer-php84.patch
new file mode 100644
index 0000000..abd0c9b
--- /dev/null
+++ b/excimer-php84.patch
@@ -0,0 +1,57 @@
+From e8acb2fbd51ac72c848207babd516cd421284461 Mon Sep 17 00:00:00 2001
+From: Remi Collet <remi@remirepo.net>
+Date: Fri, 12 Jul 2024 08:56:55 +0200
+Subject: [PATCH 1/2] Fix header path for 8.4
+
+---
+ excimer.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/excimer.c b/excimer.c
+index 8e5df91..46dbdef 100644
+--- a/excimer.c
++++ b/excimer.c
+@@ -23,7 +23,11 @@
+ #include "zend_exceptions.h"
+ #include "zend_interfaces.h"
+ #include "ext/spl/spl_exceptions.h"
++#if PHP_VERSION_ID < 80400
+ #include "ext/standard/php_mt_rand.h"
++#else
++#include "ext/random/php_random.h"
++#endif
+ #include "ext/standard/info.h"
+
+ #if PHP_VERSION_ID < 70200
+
+From 8e7113956de192b6107198a118f8024e89234144 Mon Sep 17 00:00:00 2001
+From: Remi Collet <remi@remirepo.net>
+Date: Fri, 12 Jul 2024 08:57:21 +0200
+Subject: [PATCH 2/2] simply using php_mt_rand_range
+
+---
+ excimer.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/excimer.c b/excimer.c
+index 46dbdef..aee441e 100644
+--- a/excimer.c
++++ b/excimer.c
+@@ -621,7 +621,7 @@ static zend_object *ExcimerProfiler_new(zend_class_entry *ce) /* {{{ */
+ profiler->event_type = EXCIMER_REAL;
+
+ // Stagger start time
+- initial = php_mt_rand() * EXCIMER_DEFAULT_PERIOD / UINT32_MAX;
++ initial = php_mt_rand_range(0, EXCIMER_DEFAULT_PERIOD);
+ excimer_set_timespec(&profiler->initial, initial);
+ excimer_set_timespec(&profiler->period, EXCIMER_DEFAULT_PERIOD);
+ log_obj->log.period = EXCIMER_DEFAULT_PERIOD * EXCIMER_BILLION;
+@@ -670,7 +670,7 @@ static PHP_METHOD(ExcimerProfiler, setPeriod)
+ ZEND_PARSE_PARAMETERS_END();
+
+ // Stagger start time
+- initial = php_mt_rand() * period / UINT32_MAX;
++ initial = php_mt_rand_range(0, period);
+
+ excimer_set_timespec(&profiler->period, period);
+ excimer_set_timespec(&profiler->initial, initial);