Merge pull request #26773 from neikeq/issue-26628

Mono: Fix crash with exported field of custom Reference derived type
This commit is contained in:
Rémi Verschelde 2019-03-07 22:54:03 +01:00 committed by GitHub
commit 6ee3002237
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -2249,8 +2249,11 @@ bool CSharpScript::_get_member_export(GDMonoClass *p_class, IMonoClassMember *p_
hint_string = name_only_hint_string;
}
} else if (variant_type == Variant::OBJECT && CACHED_CLASS(GodotReference)->is_assignable_from(type.type_class)) {
GDMonoClass *field_native_class = GDMonoUtils::get_class_native_base(type.type_class);
CRASH_COND(field_native_class == NULL);
hint = PROPERTY_HINT_RESOURCE_TYPE;
hint_string = NATIVE_GDMONOCLASS_NAME(type.type_class);
hint_string = NATIVE_GDMONOCLASS_NAME(field_native_class);
} else {
hint = PropertyHint(CACHED_FIELD(ExportAttribute, hint)->get_int_value(attr));
hint_string = CACHED_FIELD(ExportAttribute, hintString)->get_string_value(attr);