From: Xinchen Hui Date: Wed, 22 Jul 2015 11:13:26 +0000 (+0800) Subject: Fixed opcodes printing. X-Git-Tag: php-7.0.0beta3~5^2~110 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f56b89b0affebc916ec3c8f3275d31933dc76841;p=php Fixed opcodes printing. -p"function" -p"class::" -p"class::method" --- diff --git a/sapi/phpdbg/phpdbg_print.c b/sapi/phpdbg/phpdbg_print.c index 4a00189b46..5e485b3611 100644 --- a/sapi/phpdbg/phpdbg_print.c +++ b/sapi/phpdbg/phpdbg_print.c @@ -377,8 +377,6 @@ void phpdbg_print_opcodes_class(const char *class) { PHPDBG_API void phpdbg_print_opcodes(char *function) { - char *method_name = strtok(function, ":"); - if (function == NULL) { phpdbg_print_opcodes_main(); } else if (function[0] == '*' && function[1] == 0) { @@ -402,11 +400,14 @@ PHPDBG_API void phpdbg_print_opcodes(char *function) phpdbg_print_opcodes_ce(ce); } } ZEND_HASH_FOREACH_END(); - } else if (method_name == NULL) { + } else if (strstr(function, "::") == NULL) { phpdbg_print_opcodes_function(function, strlen(function)); - } else if ((method_name = strtok(NULL, ":")) == NULL) { - phpdbg_print_opcodes_class(function); } else { - phpdbg_print_opcodes_method(function, method_name); + char *method_name, *class_name = strtok(function, "::"); + if ((method_name = strtok(NULL, "::")) == NULL) { + phpdbg_print_opcodes_class(class_name); + } else { + phpdbg_print_opcodes_method(class_name, method_name); + } } }