summaryrefslogtreecommitdiff
path: root/ext/reflection/php_reflection.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-04-15 10:25:00 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-04-15 10:25:11 +0200
commit14047b50b49c9dac55c5bac0404e3c844d33eeeb (patch)
treebcdf5432ef5daac090959e0d63a77374e007a821 /ext/reflection/php_reflection.c
parent3e1eff251be4b1d24079fb3e74c7a62d9eccc771 (diff)
parente9c0367fdc4653331f398df36a10db1c54d6f3df (diff)
downloadphp-git-14047b50b49c9dac55c5bac0404e3c844d33eeeb.tar.gz
Merge branch 'PHP-7.2' into PHP-7.3
Diffstat (limited to 'ext/reflection/php_reflection.c')
-rw-r--r--ext/reflection/php_reflection.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c
index 2fa073cbea..f30f47f2b7 100644
--- a/ext/reflection/php_reflection.c
+++ b/ext/reflection/php_reflection.c
@@ -4720,6 +4720,10 @@ ZEND_METHOD(reflection_class, newInstance)
for (i = 0; i < num_args; i++) {
zval_ptr_dtor(&params[i]);
}
+
+ if (EG(exception)) {
+ zend_object_store_ctor_failed(Z_OBJ_P(return_value));
+ }
if (ret == FAILURE) {
php_error_docref(NULL, E_WARNING, "Invocation of %s's constructor failed", ZSTR_VAL(ce->name));
zval_ptr_dtor(return_value);
@@ -4820,6 +4824,10 @@ ZEND_METHOD(reflection_class, newInstanceArgs)
}
efree(params);
}
+
+ if (EG(exception)) {
+ zend_object_store_ctor_failed(Z_OBJ_P(return_value));
+ }
if (ret == FAILURE) {
zval_ptr_dtor(&retval);
php_error_docref(NULL, E_WARNING, "Invocation of %s's constructor failed", ZSTR_VAL(ce->name));