diff options
author | Reeze Xia <reeze@php.net> | 2015-02-13 06:19:29 +0000 |
---|---|---|
committer | Reeze Xia <reeze@php.net> | 2015-02-13 06:22:04 +0000 |
commit | 39203441ed9335f33f326b4e14473dd0f37cf6d2 (patch) | |
tree | c4b35504ec7b77ef9a17f5c045752d8c11ed3994 /sapi/phpdbg/phpdbg_frame.c | |
parent | 5f285482eac1b4f7ac5b1ef5ab40df89f79b948a (diff) | |
download | php-git-39203441ed9335f33f326b4e14473dd0f37cf6d2.tar.gz |
Fixed phpdbg backtrace argument's name missing
Diffstat (limited to 'sapi/phpdbg/phpdbg_frame.c')
-rw-r--r-- | sapi/phpdbg/phpdbg_frame.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/sapi/phpdbg/phpdbg_frame.c b/sapi/phpdbg/phpdbg_frame.c index a3531f94af..3384a2c9d1 100644 --- a/sapi/phpdbg/phpdbg_frame.c +++ b/sapi/phpdbg/phpdbg_frame.c @@ -142,11 +142,22 @@ static void phpdbg_dump_prototype(zval *tmp) /* {{{ */ } phpdbg_xml("<arg %r"); if (m && j < m) { + char *arg_name = NULL; + + if (arginfo) { + if (func->type == ZEND_INTERNAL_FUNCTION) { + arg_name = (char *)((zend_internal_arg_info *)&arginfo[j])->name; + } else { + arg_name = arginfo[j].name->val; + } + } + if (!is_variadic) { is_variadic = arginfo ? arginfo[j].is_variadic : 0; } - phpdbg_xml(" variadic=\"%s\" name=\"%s\">", is_variadic ? "variadic" : "", arginfo ? arginfo[j].name : ""); - phpdbg_out("%s=%s", arginfo ? arginfo[j].name : "?", is_variadic ? "[": ""); + + phpdbg_xml(" variadic=\"%s\" name=\"%s\">", is_variadic ? "variadic" : "", arg_name ? arg_name : ""); + phpdbg_out("%s=%s", arg_name ? arg_name : "?", is_variadic ? "[": ""); } else { phpdbg_xml(">"); |