diff options
Diffstat (limited to 'sapi/phpdbg/phpdbg_utils.c')
-rw-r--r-- | sapi/phpdbg/phpdbg_utils.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/sapi/phpdbg/phpdbg_utils.c b/sapi/phpdbg/phpdbg_utils.c index bdcb173c24..fa27fa96a8 100644 --- a/sapi/phpdbg/phpdbg_utils.c +++ b/sapi/phpdbg/phpdbg_utils.c @@ -844,12 +844,17 @@ char *phpdbg_short_zval_print(zval *zv, int maxlen) /* {{{ */ ZSTR_VAL(str), ZSTR_LEN(str) <= maxlen ? 0 : '+'); break; } - case IS_CONSTANT: - decode = estrdup("<constant>"); - break; - case IS_CONSTANT_AST: - decode = estrdup("<ast>"); + case IS_CONSTANT_AST: { + zend_ast *ast = Z_ASTVAL_P(zv); + + if (ast->kind == ZEND_AST_CONSTANT + || ast->kind == ZEND_AST_CONSTANT_CLASS) { + decode = estrdup("<constant>"); + } else { + decode = estrdup("<ast>"); + } break; + } default: spprintf(&decode, 0, "unknown type: %d", Z_TYPE_P(zv)); break; |