From: Marcus Boerger Date: Sun, 14 Nov 2004 18:01:44 +0000 (+0000) Subject: - Bugix #30783: Apache crash when using ReflectionFunction::getStaticVariables() X-Git-Tag: RELEASE_0_2~693 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=95ff205e6c4339028a8771492b41e909909c6a55;p=php - Bugix #30783: Apache crash when using ReflectionFunction::getStaticVariables() --- diff --git a/Zend/zend_reflection_api.c b/Zend/zend_reflection_api.c index f19e0b72a9..771d4101a4 100644 --- a/Zend/zend_reflection_api.c +++ b/Zend/zend_reflection_api.c @@ -1331,7 +1331,7 @@ ZEND_METHOD(reflection_function, getStaticVariables) /* Return an empty array in case no static variables exist */ array_init(return_value); - if (fptr->op_array.static_variables != NULL) { + if (fptr->type == ZEND_USER_FUNCTION && fptr->op_array.static_variables != NULL) { zend_hash_copy(Z_ARRVAL_P(return_value), fptr->op_array.static_variables, (copy_ctor_func_t) zval_add_ref, (void *) &tmp_copy, sizeof(zval *)); } } diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c index f19e0b72a9..771d4101a4 100644 --- a/ext/reflection/php_reflection.c +++ b/ext/reflection/php_reflection.c @@ -1331,7 +1331,7 @@ ZEND_METHOD(reflection_function, getStaticVariables) /* Return an empty array in case no static variables exist */ array_init(return_value); - if (fptr->op_array.static_variables != NULL) { + if (fptr->type == ZEND_USER_FUNCTION && fptr->op_array.static_variables != NULL) { zend_hash_copy(Z_ARRVAL_P(return_value), fptr->op_array.static_variables, (copy_ctor_func_t) zval_add_ref, (void *) &tmp_copy, sizeof(zval *)); } }