diff --git a/NEWS b/NEWS index dcbbb1e0663..e9363c91fe4 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,11 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? ??? ????, PHP 8.3.11 +- Core: + . Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c). + (nielsdos) + . Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c). (nielsdos) + - Curl: . Fixed case when curl_error returns an empty string. (David Carlier) @@ -9,6 +14,9 @@ PHP NEWS - Soap: . Fixed bug #55639 (Digest autentication dont work). (nielsdos) +- Streams: + . Fixed bug GH-15028 (Memory leak in ext/phar/stream.c). (nielsdos) + 01 Aug 2024, PHP 8.3.10 - Core: diff --git a/Zend/Optimizer/escape_analysis.c b/Zend/Optimizer/escape_analysis.c index 193479bae4b..840a18341a0 100644 --- a/Zend/Optimizer/escape_analysis.c +++ b/Zend/Optimizer/escape_analysis.c @@ -414,6 +414,7 @@ zend_result zend_ssa_escape_analysis(const zend_script *script, zend_op_array *o } if (zend_build_equi_escape_sets(ees, op_array, ssa) == FAILURE) { + free_alloca(ees, use_heap); return FAILURE; } diff --git a/Zend/zend_ini.c b/Zend/zend_ini.c index 40bd38c163c..9588574df6c 100644 --- a/Zend/zend_ini.c +++ b/Zend/zend_ini.c @@ -243,6 +243,7 @@ ZEND_API zend_result zend_register_ini_entries_ex(const zend_ini_entry_def *ini_ if (p->name) { zend_string_release_ex(p->name, 1); } + pefree(p, true); zend_unregister_ini_entries_ex(module_number, module_type); return FAILURE; } diff --git a/ext/phar/stream.c b/ext/phar/stream.c index 752e15ed717..b53d4297c42 100644 --- a/ext/phar/stream.c +++ b/ext/phar/stream.c @@ -782,6 +782,7 @@ static int phar_wrapper_rename(php_stream_wrapper *wrapper, const char *url_from } if (PHAR_G(readonly) && (!pto || !pto->is_data)) { php_url_free(resource_from); + php_url_free(resource_to); php_error_docref(NULL, E_WARNING, "phar error: Write operations disabled by the php.ini setting phar.readonly"); return 0; }