diff options
Diffstat (limited to 'Zend/zend_default_classes.c')
-rw-r--r-- | Zend/zend_default_classes.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Zend/zend_default_classes.c b/Zend/zend_default_classes.c index 8fdb245cb3..2679f0a9b8 100644 --- a/Zend/zend_default_classes.c +++ b/Zend/zend_default_classes.c @@ -481,9 +481,9 @@ ZEND_API void zend_exception_error(zval *exception TSRMLS_DC) EG(exception) = NULL; MAKE_STD_ZVAL(str); - handler->cast_object(exception, str, IS_STRING, 0 TSRMLS_CC); - - zend_update_property_string(default_exception_ptr, exception, "string", sizeof("string")-1, EG(exception) ? Z_OBJCE_P(exception)->name : Z_STRVAL_P(str) TSRMLS_CC); + if (handler->cast_object(exception, str, IS_STRING, 0 TSRMLS_CC) != FAILURE) { + zend_update_property_string(default_exception_ptr, exception, "string", sizeof("string")-1, EG(exception) ? Z_OBJCE_P(exception)->name : Z_STRVAL_P(str) TSRMLS_CC); + } zval_ptr_dtor(&str); if (EG(exception)) { |