mirror of
https://github.com/php/php-src.git
synced 2026-03-24 00:02:20 +01:00
Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3: Fix crashes in function registration + test
This commit is contained in:
3
NEWS
3
NEWS
@@ -15,6 +15,9 @@ PHP NEWS
|
||||
|
||||
- Intl:
|
||||
. Fixed bug GH-11874 (intl causing segfault in docker images). (nielsdos)
|
||||
|
||||
- PHPDBG:
|
||||
. Fix crashes in function registration + test. (nielsdos, Girgias)
|
||||
|
||||
- SNMP:
|
||||
. Fixed bug GH-17330 (SNMP::setSecurity segfault on closed session).
|
||||
|
||||
@@ -90,11 +90,6 @@ static void php_phpdbg_destroy_bp_condition(zval *data) /* {{{ */
|
||||
efree(brake);
|
||||
} /* }}} */
|
||||
|
||||
static void php_phpdbg_destroy_registered(zval *data) /* {{{ */
|
||||
{
|
||||
zend_function_dtor(data);
|
||||
} /* }}} */
|
||||
|
||||
static void php_phpdbg_destroy_file_source(zval *data) /* {{{ */
|
||||
{
|
||||
phpdbg_file_source *source = (phpdbg_file_source *) Z_PTR_P(data);
|
||||
@@ -164,7 +159,7 @@ static PHP_MINIT_FUNCTION(phpdbg) /* {{{ */
|
||||
zend_hash_init(&PHPDBG_G(bp)[PHPDBG_BREAK_MAP], 8, NULL, NULL, 0);
|
||||
|
||||
zend_hash_init(&PHPDBG_G(seek), 8, NULL, NULL, 0);
|
||||
zend_hash_init(&PHPDBG_G(registered), 8, NULL, php_phpdbg_destroy_registered, 0);
|
||||
zend_hash_init(&PHPDBG_G(registered), 8, NULL, NULL, true);
|
||||
|
||||
zend_hash_init(&PHPDBG_G(file_sources), 0, NULL, php_phpdbg_destroy_file_source, 0);
|
||||
phpdbg_setup_watchpoints();
|
||||
|
||||
@@ -1420,7 +1420,6 @@ PHPDBG_COMMAND(register) /* {{{ */
|
||||
if (!zend_hash_str_exists(&PHPDBG_G(registered), lcname, lcname_len)) {
|
||||
if ((function = zend_hash_str_find_ptr(EG(function_table), lcname, lcname_len))) {
|
||||
zend_hash_str_update_ptr(&PHPDBG_G(registered), lcname, lcname_len, function);
|
||||
function_add_ref(function);
|
||||
|
||||
phpdbg_notice("Registered %s", lcname);
|
||||
} else {
|
||||
|
||||
30
sapi/phpdbg/tests/register_function.phpt
Normal file
30
sapi/phpdbg/tests/register_function.phpt
Normal file
@@ -0,0 +1,30 @@
|
||||
--TEST--
|
||||
Test registering of functions
|
||||
--PHPDBG--
|
||||
R testfunc
|
||||
testfunc 1 2 3
|
||||
R var_dump
|
||||
var_dump foo
|
||||
q
|
||||
--FILE--
|
||||
<?php
|
||||
function testfunc() {
|
||||
var_dump(func_get_args());
|
||||
}
|
||||
?>
|
||||
--EXPECTF--
|
||||
[Successful compilation of %s]
|
||||
prompt> [Registered testfunc]
|
||||
prompt> array(3) {
|
||||
[0]=>
|
||||
int(1)
|
||||
[1]=>
|
||||
int(2)
|
||||
[2]=>
|
||||
int(3)
|
||||
}
|
||||
|
||||
prompt> [Registered var_dump]
|
||||
prompt> string(3) "foo"
|
||||
|
||||
prompt>
|
||||
Reference in New Issue
Block a user