1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Fix hard_timeout when zend-max-execution-timers is enabled

Closes GH-19786
This commit is contained in:
Appla
2025-09-10 16:37:55 +08:00
committed by Ilija Tovilo
parent 901f71e6e3
commit ed9430a5d1
2 changed files with 7 additions and 2 deletions

1
NEWS
View File

@@ -5,6 +5,7 @@ PHP NEWS
- Core:
. Fixed bug GH-19765 (object_properties_load() bypasses readonly property
checks). (timwolla)
. Fixed hard_timeout with --enable-zend-max-execution-timers. (Appla)
- Standard:
. Fixed bug GH-12265 (Cloning an object breaks serialization recursion).

View File

@@ -1531,7 +1531,9 @@ static void zend_set_timeout_ex(zend_long seconds, bool reset_signals) /* {{{ */
return;
}
#elif defined(ZEND_MAX_EXECUTION_TIMERS)
zend_max_execution_timer_settime(seconds);
if (seconds > 0) {
zend_max_execution_timer_settime(seconds);
}
if (reset_signals) {
sigset_t sigset;
@@ -1618,7 +1620,9 @@ void zend_unset_timeout(void) /* {{{ */
tq_timer = NULL;
}
#elif ZEND_MAX_EXECUTION_TIMERS
zend_max_execution_timer_settime(0);
if (EG(timeout_seconds)) {
zend_max_execution_timer_settime(0);
}
#elif defined(HAVE_SETITIMER)
if (EG(timeout_seconds)) {
struct itimerval no_timeout;