Fix crash when GDScript scripts are reloaded during initial import

This commit is contained in:
Mikael Hermansson 2025-07-24 16:41:33 +02:00
parent e0603aeda3
commit 809a6cf705

View file

@ -187,9 +187,9 @@ GDScriptInstance *GDScript::_create_instance(const Variant **p_args, int p_argco
return instance;
}
initializer = _super_constructor(this);
if (initializer != nullptr) {
initializer->call(instance, p_args, p_argcount, r_error);
GDScriptFunction *applicable_initializer = _super_constructor(this);
if (applicable_initializer != nullptr) {
applicable_initializer->call(instance, p_args, p_argcount, r_error);
if (r_error.error != Callable::CallError::CALL_OK) {
String error_text = Variant::get_call_error_text(instance->owner, "_init", p_args, p_argcount, r_error);
instance->script = Ref<GDScript>();