summaryrefslogtreecommitdiff
path: root/ext/reflection/php_reflection.c
diff options
context:
space:
mode:
authorChristoph M. Becker <cmbecker69@gmx.de>2019-10-27 13:12:45 +0100
committerChristoph M. Becker <cmbecker69@gmx.de>2019-10-27 13:12:45 +0100
commitef439ec895a97a12e8f88c3371dfc8881a501649 (patch)
tree3f5b62e093e9d800a712cb09422f68b038aff3e1 /ext/reflection/php_reflection.c
parent0040b2a9586d1a2fde3745804d5442cdd3968624 (diff)
downloadphp-git-ef439ec895a97a12e8f88c3371dfc8881a501649.tar.gz
Add missing zend_parse_parameters_none()
Diffstat (limited to 'ext/reflection/php_reflection.c')
-rw-r--r--ext/reflection/php_reflection.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c
index 9f60fc8f74..7b57768bd9 100644
--- a/ext/reflection/php_reflection.c
+++ b/ext/reflection/php_reflection.c
@@ -1649,6 +1649,11 @@ ZEND_METHOD(reflection_function, isDisabled)
zend_function *fptr;
GET_REFLECTION_OBJECT_PTR(fptr);
+
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
RETURN_BOOL(fptr->type == ZEND_INTERNAL_FUNCTION && fptr->internal_function.handler == zif_display_disabled_function);
}
/* }}} */
@@ -1890,6 +1895,10 @@ ZEND_METHOD(reflection_function, returnsReference)
GET_REFLECTION_OBJECT_PTR(fptr);
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
RETURN_BOOL((fptr->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE) != 0);
}
/* }}} */
@@ -1904,6 +1913,10 @@ ZEND_METHOD(reflection_function, getNumberOfParameters)
GET_REFLECTION_OBJECT_PTR(fptr);
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
num_args = fptr->common.num_args;
if (fptr->common.fn_flags & ZEND_ACC_VARIADIC) {
num_args++;
@@ -1922,6 +1935,10 @@ ZEND_METHOD(reflection_function, getNumberOfRequiredParameters)
GET_REFLECTION_OBJECT_PTR(fptr);
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
RETURN_LONG(fptr->common.required_num_args);
}
/* }}} */
@@ -1937,6 +1954,10 @@ ZEND_METHOD(reflection_function, getParameters)
GET_REFLECTION_OBJECT_PTR(fptr);
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
arg_info= fptr->common.arg_info;
num_args = fptr->common.num_args;
if (fptr->common.fn_flags & ZEND_ACC_VARIADIC) {
@@ -1976,6 +1997,10 @@ ZEND_METHOD(reflection_function, getExtension)
GET_REFLECTION_OBJECT_PTR(fptr);
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
if (fptr->type != ZEND_INTERNAL_FUNCTION) {
RETURN_NULL();
}
@@ -1999,6 +2024,10 @@ ZEND_METHOD(reflection_function, getExtensionName)
GET_REFLECTION_OBJECT_PTR(fptr);
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
if (fptr->type != ZEND_INTERNAL_FUNCTION) {
RETURN_FALSE;
}
@@ -2984,6 +3013,10 @@ ZEND_METHOD(reflection_method, getClosure)
GET_REFLECTION_OBJECT_PTR(mptr);
if (mptr->common.fn_flags & ZEND_ACC_STATIC) {
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
zend_create_fake_closure(return_value, mptr, mptr->common.scope, mptr->common.scope, NULL);
} else {
if (zend_parse_parameters(ZEND_NUM_ARGS(), "o", &obj) == FAILURE) {
@@ -4643,6 +4676,10 @@ ZEND_METHOD(reflection_class, newInstanceWithoutConstructor)
GET_REFLECTION_OBJECT_PTR(ce);
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
if (ce->type == ZEND_INTERNAL_CLASS
&& ce->create_object != NULL && (ce->ce_flags & ZEND_ACC_FINAL)) {
zend_throw_exception_ex(reflection_exception_ptr, 0, "Class %s is an internal class marked as final that cannot be instantiated without invoking its constructor", ZSTR_VAL(ce->name));
@@ -5378,6 +5415,10 @@ ZEND_METHOD(reflection_property, getValue)
}
if (ref->prop.flags & ZEND_ACC_STATIC) {
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
member_p = zend_read_static_property_ex(intern->ce, ref->unmangled_name, 0);
if (member_p) {
ZVAL_COPY_DEREF(return_value, member_p);
@@ -5463,6 +5504,10 @@ ZEND_METHOD(reflection_property, isInitialized)
}
if (ref->prop.flags & ZEND_ACC_STATIC) {
+ if (zend_parse_parameters_none() == FAILURE) {
+ return;
+ }
+
member_p = zend_read_static_property_ex(intern->ce, ref->unmangled_name, 1);
if (member_p) {
RETURN_BOOL(!Z_ISUNDEF_P(member_p));