]> granicus.if.org Git - php/commitdiff
MFH: Fix bug #29447: Reflection API issues
authorMarcus Boerger <helly@php.net>
Mon, 16 Aug 2004 08:49:48 +0000 (08:49 +0000)
committerMarcus Boerger <helly@php.net>
Mon, 16 Aug 2004 08:49:48 +0000 (08:49 +0000)
Zend/zend_reflection_api.c
ext/reflection/php_reflection.c

index c59a11d9a55459b75e4d7d7377645f14412c6471..35ad935c23cb4895ad4d65bc8ded08fa96e88c3c 100644 (file)
@@ -2304,6 +2304,7 @@ ZEND_METHOD(reflection_class, getConstants)
        METHOD_NOTSTATIC_NUMPARAMS(0);  
        GET_REFLECTION_OBJECT_PTR(ce);
        array_init(return_value);
+       zend_hash_apply_with_argument(&ce->constants_table, (apply_func_arg_t) zval_update_constant, (void*)1 TSRMLS_CC);
        zend_hash_copy(Z_ARRVAL_P(return_value), &ce->constants_table, (copy_ctor_func_t) zval_add_ref, (void *) &tmp_copy, sizeof(zval *));
 }
 /* }}} */
@@ -2324,6 +2325,7 @@ ZEND_METHOD(reflection_class, getConstant)
        }
 
        GET_REFLECTION_OBJECT_PTR(ce);
+       zend_hash_apply_with_argument(&ce->constants_table, (apply_func_arg_t) zval_update_constant, (void*)1 TSRMLS_CC);
        if (zend_hash_find(&ce->constants_table, name, name_len + 1, (void **) &value) == FAILURE) {
                RETURN_FALSE;
        }
index c59a11d9a55459b75e4d7d7377645f14412c6471..35ad935c23cb4895ad4d65bc8ded08fa96e88c3c 100644 (file)
@@ -2304,6 +2304,7 @@ ZEND_METHOD(reflection_class, getConstants)
        METHOD_NOTSTATIC_NUMPARAMS(0);  
        GET_REFLECTION_OBJECT_PTR(ce);
        array_init(return_value);
+       zend_hash_apply_with_argument(&ce->constants_table, (apply_func_arg_t) zval_update_constant, (void*)1 TSRMLS_CC);
        zend_hash_copy(Z_ARRVAL_P(return_value), &ce->constants_table, (copy_ctor_func_t) zval_add_ref, (void *) &tmp_copy, sizeof(zval *));
 }
 /* }}} */
@@ -2324,6 +2325,7 @@ ZEND_METHOD(reflection_class, getConstant)
        }
 
        GET_REFLECTION_OBJECT_PTR(ce);
+       zend_hash_apply_with_argument(&ce->constants_table, (apply_func_arg_t) zval_update_constant, (void*)1 TSRMLS_CC);
        if (zend_hash_find(&ce->constants_table, name, name_len + 1, (void **) &value) == FAILURE) {
                RETURN_FALSE;
        }