diff --git a/mono/metadata/unity-utils.c b/mono/metadata/unity-utils.c index 3357943494ba6abbbcc17e68ceaec42ba15e0a9a..d0ef772045c031fa1a5ab8fe97857a9bda67aa93 100644 --- a/mono/metadata/unity-utils.c +++ b/mono/metadata/unity-utils.c @@ -287,7 +287,10 @@ MonoClass* mono_unity_class_get_generic_definition(MonoClass* klass) MonoClass* mono_unity_class_inflate_generic_class(MonoClass *gklass, MonoGenericContext *context) { MonoError error; - return mono_class_inflate_generic_class_checked(gklass, context, &error); + MonoClass* klass; + klass = mono_class_inflate_generic_class_checked(gklass, context, &error); + mono_error_cleanup (&error); + return klass; } gboolean mono_unity_class_has_parent_unsafe(MonoClass *klass, MonoClass *parent) @@ -1945,4 +1948,10 @@ MONO_API uint32_t mono_unity_allocation_granularity() { return (uint32_t)(2 * sizeof(void *)); -} \ No newline at end of file +} + +MONO_API gboolean +mono_unity_class_is_open_constructed_type (MonoClass *klass) +{ + return mono_class_is_open_constructed_type (&klass->byval_arg); +} diff --git a/mono/metadata/unity-utils.h b/mono/metadata/unity-utils.h index afd7d46c77768b24b17d2eff815ac92a10d036b8..ad225b8748c92e3c2492cbaf88102af04b26f34c 100644 --- a/mono/metadata/unity-utils.h +++ b/mono/metadata/unity-utils.h @@ -219,4 +219,6 @@ mono_unity_set_enable_handler_block_guards (mono_bool allow); mono_bool mono_unity_get_enable_handler_block_guards (void); +MONO_API gboolean mono_unity_class_is_open_constructed_type (MonoClass *klass); + #endif