Fix continuous attempt to reload domain with API assemblies out of sync
This commit is contained in:
parent
f1130f9a8a
commit
762c912e8e
|
@ -638,7 +638,8 @@ void CSharpLanguage::reload_tool_script(const Ref<Script> &p_script, bool p_soft
|
||||||
#ifdef TOOLS_ENABLED
|
#ifdef TOOLS_ENABLED
|
||||||
void CSharpLanguage::reload_assemblies_if_needed(bool p_soft_reload) {
|
void CSharpLanguage::reload_assemblies_if_needed(bool p_soft_reload) {
|
||||||
|
|
||||||
if (gdmono->is_runtime_initialized()) {
|
if (!gdmono->is_runtime_initialized())
|
||||||
|
return;
|
||||||
|
|
||||||
GDMonoAssembly *proj_assembly = gdmono->get_project_assembly();
|
GDMonoAssembly *proj_assembly = gdmono->get_project_assembly();
|
||||||
|
|
||||||
|
@ -665,7 +666,12 @@ void CSharpLanguage::reload_assemblies_if_needed(bool p_soft_reload) {
|
||||||
if (!FileAccess::exists(GodotSharpDirs::get_res_temp_assemblies_dir().plus_file(name)))
|
if (!FileAccess::exists(GodotSharpDirs::get_res_temp_assemblies_dir().plus_file(name)))
|
||||||
return; // No assembly to load
|
return; // No assembly to load
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
if (!gdmono->get_core_api_assembly() && gdmono->metadata_is_api_assembly_invalidated(APIAssembly::API_CORE))
|
||||||
|
return; // The core API assembly to load is invalidated
|
||||||
|
|
||||||
|
if (!gdmono->get_editor_api_assembly() && gdmono->metadata_is_api_assembly_invalidated(APIAssembly::API_EDITOR))
|
||||||
|
return; // The editor API assembly to load is invalidated
|
||||||
|
|
||||||
#ifndef NO_THREADS
|
#ifndef NO_THREADS
|
||||||
lock->lock();
|
lock->lock();
|
||||||
|
|
Loading…
Reference in New Issue