From 706241f82d675421766b23fad4923f22b2c8e32c Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Tue, 24 Nov 2020 16:41:18 +0100 Subject: Fix usage of casted string in ReflectionParameter ctor Fixes oss-fuzz #27755. --- ext/reflection/php_reflection.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'ext/reflection/php_reflection.c') diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c index 620d95afa4..6384e2b410 100644 --- a/ext/reflection/php_reflection.c +++ b/ext/reflection/php_reflection.c @@ -2306,10 +2306,10 @@ ZEND_METHOD(reflection_parameter, __construct) /* nothing to do. don't set is_closure since is the invoke handler, not the closure itself */ } else if ((fptr = zend_hash_find_ptr(&ce->function_table, lcname)) == NULL) { + zend_throw_exception_ex(reflection_exception_ptr, 0, + "Method %s::%s() does not exist", ZSTR_VAL(ce->name), ZSTR_VAL(name)); zend_string_release(name); zend_string_release(lcname); - zend_throw_exception_ex(reflection_exception_ptr, 0, - "Method %s::%s() does not exist", ZSTR_VAL(ce->name), Z_STRVAL_P(method)); return; } zend_string_release(name); -- cgit v1.2.1