summaryrefslogtreecommitdiff
path: root/Zend/zend_exceptions.c
diff options
context:
space:
mode:
authorNikita Popov <nikic@php.net>2014-10-09 19:15:07 +0200
committerNikita Popov <nikic@php.net>2014-10-09 20:48:27 +0200
commitdf79b9b27af70afe502979c84a981d36ed9d86a8 (patch)
tree4a642d706985c960bbfeea70f195aeefe8eb4631 /Zend/zend_exceptions.c
parentc061c8294514fb8eae7b96f77839312244a50048 (diff)
downloadphp-git-df79b9b27af70afe502979c84a981d36ed9d86a8.tar.gz
Update get_class_name semantics
* get_class_name is now only used for displaying the class name in debugging functions like var_dump, print_r, etc. It is no longer used in get_class() etc. * As it is no longer used in get_parent_class() the parent argument is now gone. This also fixes incorrect parent classes being reported in COM. * get_class_name is now always required (previously some places made it optional and some required it) and is also required to return a non-NULL value. * Remove zend_get_object_classname. This also fixes a number of potential leaks due to incorrect usage of this function.
Diffstat (limited to 'Zend/zend_exceptions.c')
-rw-r--r--Zend/zend_exceptions.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c
index 6e4ee2fd30..f9c1a509a6 100644
--- a/Zend/zend_exceptions.c
+++ b/Zend/zend_exceptions.c
@@ -89,11 +89,8 @@ ZEND_API void zend_throw_exception_internal(zval *exception TSRMLS_DC) /* {{{ */
{
#ifdef HAVE_DTRACE
if (DTRACE_EXCEPTION_THROWN_ENABLED()) {
- zend_string *classname;
-
if (exception != NULL) {
- classname = zend_get_object_classname(Z_OBJ_P(exception) TSRMLS_CC);
- DTRACE_EXCEPTION_THROWN(classname->val);
+ DTRACE_EXCEPTION_THROWN(Z_OBJ_P(exception)->ce->val);
} else {
DTRACE_EXCEPTION_THROWN(NULL);
}
@@ -452,7 +449,7 @@ static void _build_trace_args(zval *arg, smart_str *str TSRMLS_DC) /* {{{ */
break;
case IS_OBJECT:
smart_str_appends(str, "Object(");
- smart_str_append(str, zend_get_object_classname(Z_OBJ_P(arg) TSRMLS_CC));
+ smart_str_append(str, Z_OBJCE_P(arg)->name);
smart_str_appends(str, "), ");
break;
}