1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
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);
|