PHP 8.3.20RC1
- Core:
. Fixed bug GH-17961 (use-after-free during dl()'ed module class destruction).
(Arnaud)
. Fixed bug GH-15367 (dl() of module with aliased class crashes in shutdown).
(Arnaud)
. Fixed bug GH-13193 again (Significant performance degradation in 'foreach').
(nielsdos)
- DOM:
. Fix weird unpack behaviour in DOM. (nielsdos)
. Fix xinclude destruction of live attributes. (nielsdos)
- Embed:
. Fixed bug GH-8533 (Unable to link dynamic libphp on Mac). (Kévin Dunglas)
- Fuzzer:
. Fixed bug GH-18081 (Memory leaks in error paths of fuzzer SAPI).
(Lung-Alexandra)
- GD:
. Fixed bug GH-17984 (calls with arguments as array with references).
(David Carlier)
- Intl:
. Fix locale_compose and locale_lookup to work with their array argument
with values as references. (David Carlier)
. Fix dateformat_format when the time is an array of references.
(David Carlier)
. Fix UConverter::transcode with substitutes as references. (David Carlier)
- Mbstring:
. Fixed bug GH-17989 (mb_output_handler crash with unset
http_output_conv_mimetypes). (nielsdos)
- Opcache:
. Fixed bug GH-18112 (NULL access with preloading and INI option). (nielsdos)
. Fixed bug GH-18107 (Opcache CFG jmp optimization with try-finally breaks
the exception table). (nielsdos)
- PDO:
. Fix memory leak when destroying PDORow. (nielsdos)
- SOAP:
. Fixed bug #66049 (Typemap can break parsing in parse_packet_soap leading to
a segfault) . (Remi)
- SPL:
. Fixed bug GH-18018 (RC1 data returned from offsetGet causes UAF in
ArrayObject). (nielsdos)
- Treewide:
. Fixed bug GH-17736 (Assertion failure zend_reference_destroy()). (nielsdos)
- Windows:
. Fixed bug GH-17836 (zend_vm_gen.php shouldn't break on Windows line
endings). (DanielEScherzer)
The release candidate for PHP 8.3.20 has been released for testing, addressing multiple bugs, including use-after-free issues during module class destruction, shutdown crashes, and notable performance degradation in 'foreach'. The DOM has been corrected, and the issue with XInclude affecting live attributes has been resolved. The fuzzer has been successfully resolved, and the memory leaks have been effectively addressed. The issues with Intl have been resolved, and both locale_compose and locale_lookup have been corrected. The issues with Mbstring and Opcache have been resolved. The issues with SOAP and SPL have been resolved.