summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Zend/zend_exceptions.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c
index aff602c6e8..f157abb155 100644
--- a/Zend/zend_exceptions.c
+++ b/Zend/zend_exceptions.c
@@ -242,21 +242,21 @@ ZEND_METHOD(exception, __construct)
zend_class_entry *base_ce;
int argc = ZEND_NUM_ARGS();
+ object = getThis();
+ base_ce = zend_get_exception_base(object);
+
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, argc, "|SlO!", &message, &code, &previous, zend_ce_throwable) == FAILURE) {
zend_class_entry *ce;
if (execute_data->called_scope) {
ce = execute_data->called_scope;
} else {
- ce = default_exception_ce;
+ ce = base_ce;
}
zend_error(E_EXCEPTION | E_ERROR, "Wrong parameters for %s([string $message [, long $code [, Throwable $previous = NULL]]])", ce->name->val);
return;
}
- object = getThis();
- base_ce = zend_get_exception_base(object);
-
if (message) {
zend_update_property_str(base_ce, object, "message", sizeof("message")-1, message);
}