summaryrefslogtreecommitdiff
path: root/sapi/phpdbg/phpdbg_print.c
diff options
context:
space:
mode:
authorBob Weinand <bobwei9@hotmail.com>2015-05-27 00:55:15 +0200
committerBob Weinand <bobwei9@hotmail.com>2015-05-27 00:55:26 +0200
commit5bec1490f90e1061d4b3416c8e34a5369c616475 (patch)
tree3d776df511ccc9cd771450c47a379ef7cbcf2e6b /sapi/phpdbg/phpdbg_print.c
parent7dac4d449f72d7eb029aa1a8ee87aaf38e17e1c5 (diff)
downloadphp-git-5bec1490f90e1061d4b3416c8e34a5369c616475.tar.gz
Fix phpdbg class fetch / method opcodes
Diffstat (limited to 'sapi/phpdbg/phpdbg_print.c')
-rw-r--r--sapi/phpdbg/phpdbg_print.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sapi/phpdbg/phpdbg_print.c b/sapi/phpdbg/phpdbg_print.c
index 11bfdf5a81..4013c0fd88 100644
--- a/sapi/phpdbg/phpdbg_print.c
+++ b/sapi/phpdbg/phpdbg_print.c
@@ -282,12 +282,13 @@ void phpdbg_print_opcodes_function(const char *function, size_t len) {
}
void phpdbg_print_opcodes_method(const char *class, const char *function) {
- zend_class_entry *ce = zend_hash_str_find_ptr(EG(class_table), class, strlen(class));
+ zend_class_entry *ce;
zend_function *func;
- if (!ce) {
+ if (phpdbg_safe_class_lookup(class, strlen(class), &ce) != SUCCESS) {
return;
}
+
if (ce->type != ZEND_USER_CLASS) {
phpdbg_out("function name: %s::%s (internal)\n", class, function);
return;
@@ -348,7 +349,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) {
@@ -376,7 +376,7 @@ PHPDBG_API void phpdbg_print_opcodes(char *function)
} ZEND_HASH_FOREACH_END();
} else if ((method_name = strtok(NULL, ":")) == NULL) {
phpdbg_print_opcodes_function(function, strlen(function));
- } else if (++method_name == NULL || ++method_name == NULL) {
+ } else if ((method_name + 1) == NULL) {
phpdbg_print_opcodes_class(function);
} else {
phpdbg_print_opcodes_method(function, method_name);