From e8acb2fbd51ac72c848207babd516cd421284461 Mon Sep 17 00:00:00 2001 From: Remi Collet 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 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);