mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
Fix memory leak in phpdbg calling registered function
Closes GH-17635.
This commit is contained in:
parent
5447473785
commit
62bbfdebaa
3 changed files with 28 additions and 0 deletions
1
NEWS
1
NEWS
|
@ -11,6 +11,7 @@ PHP NEWS
|
||||||
|
|
||||||
- PHPDBG:
|
- PHPDBG:
|
||||||
. Partially fixed bug GH-17387 (Trivial crash in phpdbg lexer). (nielsdos)
|
. Partially fixed bug GH-17387 (Trivial crash in phpdbg lexer). (nielsdos)
|
||||||
|
. Fix memory leak in phpdbg calling registered function. (nielsdos)
|
||||||
|
|
||||||
13 Feb 2025, PHP 8.3.17
|
13 Feb 2025, PHP 8.3.17
|
||||||
|
|
||||||
|
|
|
@ -189,6 +189,9 @@ static inline int phpdbg_call_register(phpdbg_param_t *stack) /* {{{ */
|
||||||
|
|
||||||
zval_ptr_dtor_str(&fci.function_name);
|
zval_ptr_dtor_str(&fci.function_name);
|
||||||
efree(lc_name);
|
efree(lc_name);
|
||||||
|
if (fci.named_params) {
|
||||||
|
zend_array_destroy(fci.named_params);
|
||||||
|
}
|
||||||
|
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
24
sapi/phpdbg/tests/register_function_leak.phpt
Normal file
24
sapi/phpdbg/tests/register_function_leak.phpt
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
--TEST--
|
||||||
|
registering a function and calling it leaks arguments memory
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
echo "Done\n";
|
||||||
|
?>
|
||||||
|
--PHPDBG--
|
||||||
|
register var_dump
|
||||||
|
var_dump "a" "b"
|
||||||
|
register flush
|
||||||
|
flush
|
||||||
|
r
|
||||||
|
q
|
||||||
|
--EXPECTF--
|
||||||
|
[Successful compilation of %s]
|
||||||
|
prompt> [Registered var_dump]
|
||||||
|
prompt> string(1) "a"
|
||||||
|
string(1) "b"
|
||||||
|
|
||||||
|
prompt> [Registered flush]
|
||||||
|
prompt>
|
||||||
|
prompt> Done
|
||||||
|
[Script ended normally]
|
||||||
|
prompt>
|
Loading…
Add table
Add a link
Reference in a new issue