- version update to 8.4.10 [bsc#1246146][bsc#1246148][bsc#1246167]
BcMath:
Fixed bug GH-18641 (Accessing a BcMath\Number property by ref crashes).
Core:
Fixed bugs GH-17711 and GH-18022 (Infinite recursion on deprecated attribute evaluation) and GH-18464 (Recursion protection for deprecation constants not released on bailout).
Fixed GH-18695 (zend_ast_export() - float number is not preserved).
Fix handling of references in zval_try_get_long().
Do not delete main chunk in zend_gc.
Fix compile issues with zend_alloc and some non-default options.
Curl:
Fix memory leak when setting a list via curl_setopt fails.
Date:
Fix leaks with multiple calls to DatePeriod iterator current().
DOM:
Fixed bug GH-18744 (classList works not correctly if copy HTMLElement by clone keyword).
FPM:
Fixed GH-18662 (fpm_get_status segfault).
Hash:
Fixed bug GH-14551 (PGO build fails with xxhash).
Intl:
Fix memory leak in intl_datetime_decompose() on failure.
Fix memory leak in locale lookup on failure.
Opcache:
Fixed bug GH-18743 (Incompatibility in Inline TLS Assembly on Alpine 3.22).
ODBC:
Fix memory leak on php_odbc_fetch_hash() failure.
OpenSSL:
Fix memory leak of X509_STORE in php_openssl_setup_verify() on failure.
Fixed bug #74796 (Requests through http proxy set peer name).
PGSQL:
OBS-URL: https://build.opensuse.org/request/show/1291490
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=91
- version update to 8.4.8
Core:
Fixed GH-18480 (array_splice with large values for offset/length arguments).
Partially fixed GH-18572 (nested object comparisons leading to stack overflow).
Fixed OSS-Fuzz #417078295.
Fixed OSS-Fuzz #418106144.
Curl:
Fixed GH-18460 (curl_easy_setopt with CURLOPT_USERPWD/CURLOPT_USERNAME/ CURLOPT_PASSWORD set the Authorization header when set to NULL).
Date:
Fixed bug GH-18076 (Since PHP 8, the date_sun_info() function returns inaccurate sunrise and sunset times, but other calculated times are correct) (JiriJozif).
Fixed bug GH-18481 (date_sunrise with unexpected nan value for the offset).
DOM:
Backport lexbor/lexbor#274.
Intl:
Fix various reference issues.
LDAP:
Fixed bug GH-18529 (ldap no longer respects TLS_CACERT from ldaprc in ldap_start_tls()).
Opcache:
Fixed bug GH-18417 (Windows SHM reattachment fails when increasing memory_consumption or jit_buffer_size).
Fixed bug GH-18297 (Exception not handled when jit guard is triggered).
Fixed bug GH-18408 (Snapshotted poly_func / poly_this may be spilled).
Fixed bug GH-18567 (Preloading with internal class alias triggers assertion failure).
Fixed bug GH-18534 (FPM exit code 70 with enabled opcache and hooked properties in traits).
Fix leak of accel_globals->key.
OpenSSL:
Fix missing checks against php_set_blocking() in xp_ssl.c.
SPL:
Fixed bug GH-18421 (Integer overflow with large numbers in LimitIterator).
Standard:
Fixed bug GH-17403 (Potential deadlock when putenv fails).
OBS-URL: https://build.opensuse.org/request/show/1283579
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=90
- version update to 8.4.7
Core:
Fixed bug GH-18038 (Lazy proxy calls magic methods twice).
Fixed bug GH-18209 (Use-after-free in extract() with EXTR_REFS).
Fixed bug GH-18268 (Segfault in array_walk() on object with added property hooks).
Fixed bug GH-18304 (Changing the properties of a DateInterval through dynamic properties triggers a SegFault).
Fix some leaks in php_scandir.
DBA:
FIxed bug GH-18247 dba_popen() memory leak on invalid path.
Filter:
Fixed bug GH-18309 (ipv6 filter integer overflow).
GD:
Fixed imagecrop() overflow with rect argument with x/width y/heigh usage in gdImageCrop().
Fixed GH-18243 imagettftext() overflow/underflow on font size value.
Intl:
Fix reference support for intltz_get_offset().
LDAP:
Fixed bug GH-17776 (LDAP_OPT_X_TLS_* options can't be overridden).
Fix NULL deref on high modification key.
libxml:
Fixed custom external entity loader returning an invalid resource leading to a confusing TypeError message.
Opcache:
Fixed bug GH-18294 (assertion failure zend_jit_ir.c).
Fixed bug GH-18289 (Fix segfault in JIT).
Fixed bug GH-18136 (tracing JIT floating point register clobbering on Windows and ARM64).
OpenSSL:
Fix memory leak in openssl_sign() when passing invalid algorithm.
Fix potential leaks when writing to BIO fails.
PDO Firebird:
Fixed bug GH-18276 (persistent connection - "zend_mm_heap corrupted" with setAttribute())
Fixed bug GH-17383 (PDOException has wrong code and message since PHP 8.4)
PDO Sqlite:
Fix memory leak on error return of collation callback.
PgSql:
Fix uouv in pg_put_copy_end().
SPL:
Fixed bug GH-18322 (SplObjectStorage debug handler mismanages memory).
Standard:
Fixed bug GH-18145 (php8ts crashes in php_clear_stat_cache()).
Fix resource leak in iptcembed() on error.
Tests:
Address deprecated PHP 8.4 session options to prevent test failures.
Zip:
Fix uouv when handling empty options in ZipArchive::addGlob().
Fix memory leak when handling a too long path in ZipArchive::addGlob(). (forwarded request 1276314 from adkorte)
OBS-URL: https://build.opensuse.org/request/show/1276711
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=89
Core:
Fixed bug GH-18038 (Lazy proxy calls magic methods twice).
Fixed bug GH-18209 (Use-after-free in extract() with EXTR_REFS).
Fixed bug GH-18268 (Segfault in array_walk() on object with added property hooks).
Fixed bug GH-18304 (Changing the properties of a DateInterval through dynamic properties triggers a SegFault).
Fix some leaks in php_scandir.
DBA:
FIxed bug GH-18247 dba_popen() memory leak on invalid path.
Filter:
Fixed bug GH-18309 (ipv6 filter integer overflow).
GD:
Fixed imagecrop() overflow with rect argument with x/width y/heigh usage in gdImageCrop().
Fixed GH-18243 imagettftext() overflow/underflow on font size value.
Intl:
Fix reference support for intltz_get_offset().
LDAP:
Fixed bug GH-17776 (LDAP_OPT_X_TLS_* options can't be overridden).
Fix NULL deref on high modification key.
libxml:
Fixed custom external entity loader returning an invalid resource leading to a confusing TypeError message.
Opcache:
Fixed bug GH-18294 (assertion failure zend_jit_ir.c).
Fixed bug GH-18289 (Fix segfault in JIT).
Fixed bug GH-18136 (tracing JIT floating point register clobbering on Windows and ARM64).
OpenSSL:
Fix memory leak in openssl_sign() when passing invalid algorithm.
Fix potential leaks when writing to BIO fails.
PDO Firebird:
Fixed bug GH-18276 (persistent connection - "zend_mm_heap corrupted" with setAttribute())
Fixed bug GH-17383 (PDOException has wrong code and message since PHP 8.4)
PDO Sqlite:
Fix memory leak on error return of collation callback.
PgSql:
Fix uouv in pg_put_copy_end().
SPL:
Fixed bug GH-18322 (SplObjectStorage debug handler mismanages memory).
Standard:
Fixed bug GH-18145 (php8ts crashes in php_clear_stat_cache()).
Fix resource leak in iptcembed() on error.
Tests:
Address deprecated PHP 8.4 session options to prevent test failures.
Zip:
Fix uouv when handling empty options in ZipArchive::addGlob().
Fix memory leak when handling a too long path in ZipArchive::addGlob().
OBS-URL: https://build.opensuse.org/package/show/devel:languages:php/php8?expand=0&rev=210
BCMath:
Fixed pointer subtraction for scale.
Core:
Fixed property hook backing value access in multi-level inheritance.
Fixed accidentally inherited default value in overridden virtual properties.
Fixed bug GH-17376 (Broken JIT polymorphism for property hooks added to child class).
Fixed bug GH-17913 (ReflectionFunction::isDeprecated() returns incorrect results for closures created from magic __call()).
Fixed bug GH-17941 (Stack-use-after-return with lazy objects and hooks).
Fixed bug GH-17988 (Incorrect handling of hooked props without get hook in get_object_vars()).
Fixed bug GH-17998 (Skipped lazy object initialization on primed SIMPLE_WRITE cache).
Fixed bug GH-17998 (Assignment to backing value in set hook of lazy proxy calls hook again).
Fixed bug GH-17961 (use-after-free during dl()'ed module class destruction).
Fixed bug GH-15367 (dl() of module with aliased class crashes in shutdown).
Fixed OSS-Fuzz #403308724.
Fixed bug GH-13193 again (Significant performance degradation in 'foreach').
DBA:
Fixed assertion violation when opening the same file with dba_open multiple times.
DOM:
Fixed bug GH-17991 (Assertion failure dom_attr_value_write).
Fix weird unpack behaviour in DOM.
Fixed bug GH-18090 (DOM: Svg attributes and tag names are being lowercased).
Fix xinclude destruction of live attributes.
Fuzzer:
Fixed bug GH-18081 (Memory leaks in error paths of fuzzer SAPI).
GD:
Fixed bug GH-17984 (calls with arguments as array with references).
LDAP:
Fixed bug GH-18015 (Error messages for ldap_mod_replace are confusing).
Mbstring:
Fixed bug GH-17989 (mb_output_handler crash with unset http_output_conv_mimetypes).
Opcache:
Fixed bug GH-15834 (Segfault with hook "simple get" cache slot and minimal JIT).
Fixed bug GH-17966 (Symfony JIT 1205 assertion failure).
Fixed bug GH-18037 (SEGV Zend/zend_execute.c).
Fixed bug GH-18050 (IN_ARRAY optimization in DFA pass is broken).
Fixed bug GH-18113 (stack-buffer-overflow ext/opcache/jit/ir/ir_sccp.c).
Fixed bug GH-18112 (NULL access with preloading and INI option).
Fixed bug GH-18107 (Opcache CFG jmp optimization with try-finally breaks the exception table).
PDO:
Fix memory leak when destroying PDORow.
Standard:
Fix memory leaks in array_any() / array_all().
SOAP:
Fixed bug #66049 (Typemap can break parsing in parse_packet_soap leading to a segfault) .
SPL:
Fixed bug GH-18018 (RC1 data returned from offsetGet causes UAF in ArrayObject).
Treewide:
Fixed bug GH-17736 (Assertion failure zend_reference_destroy()).
Windows:
Fixed bug GH-17836 (zend_vm_gen.php shouldn't break on Windows line endings).
OBS-URL: https://build.opensuse.org/package/show/devel:languages:php/php8?expand=0&rev=208
- version update to 8.4.5
BCMath:
Fixed bug GH-17398 (bcmul memory leak).
Core:
Fixed bug GH-17623 (Broken stack overflow detection for variable compilation).
Fixed bug GH-17618 (UnhandledMatchError does not take zend.exception_ignore_args=1 into account).
Fix fallback paths in fast_long_{add,sub}_function.
Fixed bug OSS-Fuzz #391975641 (Crash when accessing property backing value by reference).
Fixed bug GH-17718 (Calling static methods on an interface that has `__callStatic` is allowed).
Fixed bug GH-17713 (ReflectionProperty::getRawValue() and related methods may call hooks of overridden properties).
Fixed bug GH-17916 (Final abstract properties should error).
Fixed bug GH-17866 (zend_mm_heap corrupted error after upgrading from 8.4.3 to 8.4.4).
Fixed GHSA-rwp7-7vc6-8477 (Reference counting in php_request_shutdown causes Use-After-Free). (CVE-2024-11235)
DOM:
Fixed bug GH-17609 (Typo in error message: Dom\NO_DEFAULT_NS instead of Dom\HTML_NO_DEFAULT_NS).
Fixed bug GH-17802 (\Dom\HTMLDocument querySelector attribute name is case sensitive in HTML).
Fixed bug GH-17847 (xinclude destroys live node).
Fix using Dom\Node with Dom\XPath callbacks.
GD:
Fixed bug GH-17703 (imagescale with both width and height negative values triggers only an Exception on width).
Fixed bug GH-17772 (imagepalettetotruecolor crash with memory_limit=2M).
FFI:
Fix FFI Parsing of Pointer Declaration Lists.
FPM:
Fixed bug GH-17643 (FPM with httpd ProxyPass encoded PATH_INFO env).
LDAP:
Fixed bug GH-17704 (ldap_search fails when $attributes contains a non-packed array with numerical keys).
LibXML:
Fixed GHSA-wg4p-4hqh-c3g9 (Reocurrence of #72714).
Fixed GHSA-p3x9-6h7p-cgfc (libxml streams use wrong `content-type` header when requesting a redirected resource). (CVE-2025-1219)
OBS-URL: https://build.opensuse.org/request/show/1267591
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=87
- version update to 8.3.17
Core:
Fixed bug GH-16892 (ini_parse_quantity() fails to parse inputs starting with 0x0b).
Fixed bug GH-16886 (ini_parse_quantity() fails to emit warning for 0x+0).
Fixed bug GH-17214 (Relax final+private warning for trait methods with inherited final).
Fixed NULL arithmetic during system program execution on Windows.
Fixed potential OOB when checking for trailing spaces on Windows.
Fixed bug GH-17408 (Assertion failure Zend/zend_exceptions.c).
Fix may_have_extra_named_args flag for ZEND_AST_UNPACK.
Fix NULL arithmetic in System V shared memory emulation for Windows.
DOM:
Fixed bug GH-17500 (Segfault with requesting nodeName on nameless doctype).
Enchant:
Fix crashes in enchant when passing null bytes.
FTP:
Fixed bug GH-16800 (ftp functions can abort with EINTR).
GD:
Fixed bug GH-17349 (Tiled truecolor filling looses single color transparency).
Fixed bug GH-17373 (imagefttext() ignores clipping rect for palette images).
Ported fix for libgd 223 (gdImageRotateGeneric() does not properly interpolate).
Intl:
Fixed bug GH-11874 (intl causing segfault in docker images).
Fixed bug GH-17469 (UConverter::transcode always emit E_WARNING on invalid encoding).
Opcache:
Fixed bug GH-17307 (Internal closure causes JIT failure).
Fixed bug GH-17564 (Potential UB when reading from / writing to struct padding).
PDO:
Fixed a memory leak when the GC is used to free a PDOStatment.
Fixed a crash in the PDO Firebird Statement destructor.
Fixed UAFs when changing default fetch class ctor args.
OBS-URL: https://build.opensuse.org/request/show/1245821
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=83
- version update to 8.3.16
Core:
Fixed bug GH-17106 (ZEND_MATCH_ERROR misoptimization).
Fixed bug GH-17162 (zend_array_try_init() with dtor can cause engine UAF).
Fixed bug GH-17101 (AST->string does not reproduce constructor property promotion correctly).
Fixed bug GH-17211 (observer segfault on function loaded with dl()).
Fixed bug GH-17216 (Trampoline crash on error).
Date:
Fixed bug GH-14709 DatePeriod::__construct() overflow on recurrences.
DBA:
Skip test if inifile is disabled.
DOM:
Fixed bug GH-17224 (UAF in importNode).
Embed:
Make build command for program using embed portable.
FFI:
Fixed bug #79075 (FFI header parser chokes on comments).
Fix memory leak on ZEND_FFI_TYPE_CHAR conversion failure.
Fixed bug GH-16013 and bug #80857 (Big endian issues).
Filter:
Fixed bug GH-16944 (Fix filtering special IPv4 and IPv6 ranges, by using information from RFC 6890).
FPM:
Fixed bug GH-13437 (FPM: ERROR: scoreboard: failed to lock (already locked)).
Fixed bug GH-17112 (Macro redefinitions).
Fixed bug GH-17208 (bug64539-status-json-encoding.phpt fail on 32-bits).
GD:
Fixed bug GH-16255 (Unexpected nan value in ext/gd/libgd/gd_filter.c).
Ported fix for libgd bug 276 (Sometimes pixels are missing when storing images as BMPs).
Gettext:
Fixed bug GH-17202 (Segmentation fault ext/gettext/gettext.c bindtextdomain()).
OBS-URL: https://build.opensuse.org/request/show/1238427
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=81
- version update to 8.3.15
Calendar:
Fixed jdtogregorian overflow.
Fixed cal_to_jd julian_days argument overflow.
COM:
Fixed bug GH-16991 (Getting typeinfo of non DISPATCH variant segfaults).
Core:
Fail early in *nix configuration build script.
Fixed bug GH-16727 (Opcache bad signal 139 crash in ZTS bookworm (frankenphp)).
Fixed bug GH-16799 (Assertion failure at Zend/zend_vm_execute.h:7469).
Fixed bug GH-16630 (UAF in lexer with encoding translation and heredocs).
Fix is_zend_ptr() huge block comparison.
Fixed potential OOB read in zend_dirname() on Windows.
Curl:
Fixed bug GH-16802 (open_basedir bypass using curl extension).
Fix various memory leaks in curl mime handling.
DOM:
Fixed bug GH-16777 (Calling the constructor again on a DOM object after it is in a document causes UAF).
Fixed bug GH-16906 (Reloading document can cause UAF in iterator).
FPM:
Fixed GH-16432 (PHP-FPM 8.2 SIGSEGV in fpm_get_status).
GD:
Fixed GH-16776 (imagecreatefromstring overflow).
GMP:
Fixed bug GH-16890 (array_sum() with GMP can loose precision (LLP64)).
Hash:
Fixed GH-16711: Segfault in mhash().
Opcache:
Fixed bug GH-16770 (Tracing JIT type mismatch when returning UNDEF).
Fixed bug GH-16851 (JIT_G(enabled) not set correctly on other threads).
OBS-URL: https://build.opensuse.org/request/show/1232801
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=79
- version update to 8.3.14
CLI:
Fixed bug GH-16373 (Shebang is not skipped for router script in cli-server started through shebang).
Fixed bug GHSA-4w77-75f9-2c8w (Heap-Use-After-Free in sapi_read_post_data Processing in CLI SAPI Interface).
COM:
Fixed out of bound writes to SafeArray data.
Core:
Fixed bug GH-16168 (php 8.1 and earlier crash immediately when compiled with Xcode 16 clang on macOS 15).
Fixed bug GH-16371 (Assertion failure in Zend/zend_weakrefs.c:646).
Fixed bug GH-16515 (Incorrect propagation of ZEND_ACC_RETURN_REFERENCE for call trampoline).
Fixed bug GH-16509 (Incorrect line number in function redeclaration error).
Fixed bug GH-16508 (Incorrect line number in inheritance errors of delayed early bound classes).
Fixed bug GH-16648 (Use-after-free during array sorting).
Curl:
Fixed bug GH-16302 (CurlMultiHandle holds a reference to CurlHandle if curl_multi_add_handle fails).
Date:
Fixed bug GH-16454 (Unhandled INF in date_sunset() with tiny $utcOffset).
Fixed bug GH-14732 (date_sun_info() fails for non-finite values).
DBA:
Fixed bug GH-16390 (dba_open() can segfault for "pathless" streams).
DOM:
Fixed bug GH-16316 (DOMXPath breaks when not initialized properly).
Add missing hierarchy checks to replaceChild.
Fixed bug GH-16336 (Attribute intern document mismanagement).
Fixed bug GH-16338 (Null-dereference in ext/dom/node.c).
Fixed bug GH-16473 (dom_import_simplexml stub is wrong).
Fixed bug GH-16533 (Segfault when adding attribute to parent that is not an element).
Fixed bug GH-16535 (UAF when using document as a child).
Fixed bug GH-16593 (Assertion failure in DOM->replaceChild).
Fixed bug GH-16595 (Another UAF in DOM -> cloneNode).
OBS-URL: https://build.opensuse.org/request/show/1225446
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=77
- version update to 8.3.11
Core:
Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
Fix uninitialized memory in network.c.
Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
Fixed bug GH-15275 (Crash during GC of suspended generator delegate).
Curl:
Fixed case when curl_error returns an empty string.
DOM:
Fix UAF when removing doctype and using foreach iteration.
FFI:
Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).
Hash:
Fix crash when converting array data for array in shm in xxh3.
Intl:
Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).
Opcache:
Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).
Output:
Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).
PDO_Firebird:
Fix bogus fallthrough path in firebird_handle_get_attribute().
PHPDBG:
Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
Fixed bug GH-15210 use-after-free on watchpoint allocations.
Soap:
OBS-URL: https://build.opensuse.org/request/show/1197730
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=73
- version update to 8.3.9
Core:
Fixed bug GH-14315 (Incompatible pointer type warnings).
Fixed bug GH-12814 (max_execution_time reached too early on MacOS 14 when running on Apple Silicon).
Fixed bug GH-14387 (Crash when stack walking in destructor of yielded from values during Generator->throw()).
Fixed bug GH-14456 (Attempting to initialize class with private constructor calls destructor).
Fixed bug GH-14510 (memleak due to missing pthread_attr_destroy()-call).
Fixed bug GH-14549 (Incompatible function pointer type for fclose).
BCMatch:
Fixed bug (bcpowmod() with mod = -1 returns 1 when it must be 0).
Curl:
Fixed bug GH-14307 (Test curl_basic_024 fails with curl 8.8.0).
DOM:
Fixed bug GH-14343 (Memory leak in xml and dom).
FPM:
Fixed bug GH-14037 (PHP-FPM ping.path and ping.response config vars are ignored in status pool).
GD:
Fix parameter numbers for imagecolorset().
Intl:
Fix reference handling in SpoofChecker.
MySQLnd:
Partially fix bug GH-10599 (Apache crash on Windows when using a self-referencing anonymous function inside a class with an active mysqli connection).
Opcache:
Fixed bug GH-14267 (opcache.jit=off does not allow enabling JIT at runtime).
Fixed TLS access in JIT on FreeBSD/amd64.
Fixed bug GH-11188 (Error when building TSRM in ARM64).
PDO ODBC:
Fixed bug GH-14367 (incompatible SDWORD type with iODBC).
PHPDBG:
Fixed bug GH-13681 (segfault on watchpoint addition failure).
OBS-URL: https://build.opensuse.org/request/show/1186042
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/php8?expand=0&rev=71