diff options
author | Dmitry Stogov <dmitry@zend.com> | 2016-06-22 17:23:04 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2016-06-22 17:23:04 +0300 |
commit | 3c84e5e1ceff8b7a17c3047c5ade822067a55a70 (patch) | |
tree | 300d66ecbf3bb2467a7322e4ef5c93732e2ade26 /Zend/zend_exceptions.c | |
parent | c196f9cdf73f49a73eb35919525cfc4b218174bc (diff) | |
download | php-git-3c84e5e1ceff8b7a17c3047c5ade822067a55a70.tar.gz |
Allow "proxy" ovjects to substitute their class names through get_class_name() handler (similar to var_dump() and others).
Diffstat (limited to 'Zend/zend_exceptions.c')
-rw-r--r-- | Zend/zend_exceptions.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c index b52dc2362c..663e83f821 100644 --- a/Zend/zend_exceptions.c +++ b/Zend/zend_exceptions.c @@ -563,11 +563,13 @@ static void _build_trace_args(zval *arg, smart_str *str) /* {{{ */ case IS_ARRAY: smart_str_appends(str, "Array, "); break; - case IS_OBJECT: + case IS_OBJECT: { + zend_string *class_name = Z_OBJ_HANDLER_P(arg, get_class_name)(Z_OBJ_P(arg)); smart_str_appends(str, "Object("); - smart_str_appends(str, ZSTR_VAL(Z_OBJCE_P(arg)->name)); + smart_str_appends(str, ZSTR_VAL(class_name)); smart_str_appends(str, "), "); break; + } } } /* }}} */ |