Fixed bug #52772 (var_dump() doesn't check for the existence of get_class_name before calling it)

This commit is contained in:
Kalle Sommer Nielsen 2010-09-13 20:14:18 +00:00
parent f4da90705b
commit 4119b09a1a
2 changed files with 9 additions and 3 deletions

2
NEWS
View File

@ -23,6 +23,8 @@
- Fixed bug #52786 (PHP should reset section to [PHP] after ini sections).
(Fedora at famillecollet dot com)
- Fixed bug #52772 (var_dump() doesn't check for the existence of
get_class_name before calling it). (Kalle, Gustavo)
- Fixed bug #52744 (cal_days_in_month incorrect for December 1 BCE).
(gpap at internet dot gr, Adam)
- Fixed bug #52725 (gcc builtin atomic functions were sometimes used when they

View File

@ -284,9 +284,13 @@ PHPAPI void php_debug_zval_dump(zval **struc, int level TSRMLS_DC) /* {{{ */
return;
}
ce = Z_OBJCE_PP(struc);
Z_OBJ_HANDLER_PP(struc, get_class_name)(*struc, &class_name, &class_name_len, 0 TSRMLS_CC);
php_printf("%sobject(%s)#%d (%d) refcount(%u){\n", COMMON, class_name, Z_OBJ_HANDLE_PP(struc), myht ? zend_hash_num_elements(myht) : 0, Z_REFCOUNT_PP(struc));
efree(class_name);
if (Z_OBJ_HANDLER_PP(struc, get_class_name)) {
Z_OBJ_HANDLER_PP(struc, get_class_name)(*struc, &class_name, &class_name_len, 0 TSRMLS_CC);
php_printf("%sobject(%s)#%d (%d) refcount(%u){\n", COMMON, class_name, Z_OBJ_HANDLE_PP(struc), myht ? zend_hash_num_elements(myht) : 0, Z_REFCOUNT_PP(struc));
efree(class_name);
} else {
php_printf("%sobject(unknown class)#%d (%d) refcount(%u){\n", COMMON, Z_OBJ_HANDLE_PP(struc), myht ? zend_hash_num_elements(myht) : 0, Z_REFCOUNT_PP(struc));
}
zval_element_dump_func = zval_object_property_dump;
head_done:
if (myht) {