Attach mono thread before getting nativeName field
In order to access the `nativeName` constant field from a C# class, the mono scope thread must be attached or the mono domain will be null.
This commit is contained in:
parent
8aa4ed8b5b
commit
303f0c8626
|
@ -3245,6 +3245,8 @@ ScriptInstance *CSharpScript::instance_create(Object *p_this) {
|
|||
CRASH_COND(!valid);
|
||||
#endif
|
||||
|
||||
GD_MONO_SCOPE_THREAD_ATTACH;
|
||||
|
||||
if (native) {
|
||||
StringName native_name = NATIVE_GDMONOCLASS_NAME(native);
|
||||
if (!ClassDB::is_parent_class(p_this->get_class_name(), native_name)) {
|
||||
|
@ -3257,8 +3259,6 @@ ScriptInstance *CSharpScript::instance_create(Object *p_this) {
|
|||
}
|
||||
}
|
||||
|
||||
GD_MONO_SCOPE_THREAD_ATTACH;
|
||||
|
||||
Callable::CallError unchecked_error;
|
||||
return _create_instance(nullptr, 0, p_this, Object::cast_to<RefCounted>(p_this) != nullptr, unchecked_error);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue