Browse Source
Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
NEWS for hrtime in FTP and standard
Handle broken hrtime in ftp
Fix arginfo/zpp violation if zend_hrtime is not available
pull/19290/head
Niels Dossche
3 months ago
No known key found for this signature in database
GPG Key ID: B8A8AD166DF0E2E5
3 changed files with
7 additions and
2 deletions
-
NEWS
-
ext/ftp/ftp.c
-
ext/standard/hrtime.c
|
|
@ -12,6 +12,9 @@ PHP NEWS |
|
|
|
. Fixed bug GH-18581 (Coerce numeric string keys from iterators when argument |
|
|
|
unpacking). (ilutov) |
|
|
|
|
|
|
|
- FTP: |
|
|
|
. Fix theoretical issues with hrtime() not being available. (nielsdos) |
|
|
|
|
|
|
|
- Hash: |
|
|
|
. Fix crash on clone failure. (nielsdos) |
|
|
|
|
|
|
@ -41,6 +44,7 @@ PHP NEWS |
|
|
|
- Standard: |
|
|
|
. Fixed OSS Fuzz #433303828 (Leak in failed unserialize() with opcache). |
|
|
|
(ilutov) |
|
|
|
. Fix theoretical issues with hrtime() not being available. (nielsdos) |
|
|
|
|
|
|
|
31 Jul 2025, PHP 8.4.11 |
|
|
|
|
|
|
|
|
|
@ -1491,7 +1491,8 @@ static int my_poll(php_socket_t fd, int events, int timeout) { |
|
|
|
|
|
|
|
if (n == -1 && php_socket_errno() == EINTR) { |
|
|
|
zend_hrtime_t delta_ns = zend_hrtime() - start_ns; |
|
|
|
if (delta_ns > timeout_hr) { |
|
|
|
/* delta_ns == 0 is only possible with a platform that does not support a high-res timer. */ |
|
|
|
if (delta_ns > timeout_hr || UNEXPECTED(delta_ns == 0)) { |
|
|
|
#ifndef PHP_WIN32 |
|
|
|
errno = ETIMEDOUT; |
|
|
|
#endif |
|
|
|
|
|
@ -46,7 +46,6 @@ |
|
|
|
delivered timestamp is monotonic and cannot be adjusted. */ |
|
|
|
PHP_FUNCTION(hrtime) |
|
|
|
{ |
|
|
|
#if ZEND_HRTIME_AVAILABLE |
|
|
|
bool get_as_num = 0; |
|
|
|
zend_hrtime_t t = zend_hrtime(); |
|
|
|
|
|
|
@ -55,6 +54,7 @@ PHP_FUNCTION(hrtime) |
|
|
|
Z_PARAM_BOOL(get_as_num) |
|
|
|
ZEND_PARSE_PARAMETERS_END(); |
|
|
|
|
|
|
|
#if ZEND_HRTIME_AVAILABLE |
|
|
|
if (UNEXPECTED(get_as_num)) { |
|
|
|
PHP_RETURN_HRTIME(t); |
|
|
|
} else { |
|
|
|