static MonoObject*
create_cattr_typed_arg (MonoType *t, MonoObject *val, MonoError *error)
{
- static MonoMethod *ctor;
MonoObject *retval;
void *params [2], *unboxed;
error_init (error);
- if (!ctor) {
+ MONO_STATIC_POINTER_INIT (MonoMethod, ctor)
+
ctor = mono_class_get_method_from_name_checked (mono_class_get_custom_attribute_typed_argument_class (), ".ctor", 2, 0, error);
mono_error_assert_ok (error);
- }
-
+
+ MONO_STATIC_POINTER_INIT_END (MonoMethod, ctor)
+
params [0] = mono_type_get_object_checked (mono_domain_get (), t, error);
return_val_if_nok (error, NULL);
static MonoObject*
create_cattr_named_arg (void *minfo, MonoObject *typedarg, MonoError *error)
{
- static MonoMethod *ctor;
MonoObject *retval;
void *unboxed, *params [2];
error_init (error);
- if (!ctor) {
+ MONO_STATIC_POINTER_INIT (MonoMethod, ctor)
+
ctor = mono_class_get_method_from_name_checked (mono_class_get_custom_attribute_named_argument_class (), ".ctor", 2, 0, error);
mono_error_assert_ok (error);
- }
+
+ MONO_STATIC_POINTER_INIT_END (MonoMethod, ctor)
params [0] = minfo;
params [1] = typedarg;