Commit 99aec782099 for php.net
commit 99aec78209945ad999b913d70c9617f677b65dd8
Merge: b18b11ee28a 6f6c9e35e83
Author: Ilija Tovilo <ilija.tovilo@me.com>
Date: Sun Jan 11 01:21:22 2026 +0100
Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
Fix infinite loop in GC destructor fiber
diff --cc NEWS
index e32d1d5d718,8201bf8cf9c..5f93cb7335e
--- a/NEWS
+++ b/NEWS
@@@ -1,14 -1,11 +1,15 @@@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-?? ??? ????, PHP 8.4.18
+?? ??? ????, PHP 8.5.3
- Core:
+ . Fixed bug GH-20806 (preserve_none feature compatiblity with LTO).
+ (henderkes)
+ . Fixed bug GH-20767 (build failure with musttail/preserve_none feature
+ on macOs). (David Carlier)
. Fixed bug GH-20837 (NULL dereference when calling ob_start() in shutdown
function triggered by bailout in php_output_lock_error()). (timwolla)
+ . Fix OSS-Fuzz #471533782 (Infinite loop in GC destructor fiber). (ilutov)
- MbString:
. Fixed bug GH-20833 (mb_str_pad() divide by zero if padding string is
diff --cc Zend/zend_gc.c
index e15f97ecfe8,7b2ff49a736..edbb9a57bf0
--- a/Zend/zend_gc.c
+++ b/Zend/zend_gc.c
@@@ -1968,9 -1925,10 +1985,11 @@@ static zend_never_inline void gc_call_d
break;
}
}
+
+ EG(exception) = exception;
}
+/* Perform a garbage collection run. The default implementation of gc_collect_cycles. */
ZEND_API int zend_gc_collect_cycles(void)
{
int total_count = 0;