Browse Source

Merge pull request #80212 from raulsntos/dotnet/check_api_assemblies_dir_exists

Show alert if .NET assemblies dir does not exist
Rémi Verschelde 2 years ago
parent
commit
0606ba7c50
1 changed files with 6 additions and 0 deletions
  1. 6 0
      modules/mono/mono_gd/gd_mono.cpp

+ 6 - 0
modules/mono/mono_gd/gd_mono.cpp

@@ -376,6 +376,12 @@ void GDMono::initialize() {
 
 	godot_plugins_initialize_fn godot_plugins_initialize = nullptr;
 
+	// Check that the .NET assemblies directory exists before trying to use it.
+	if (!DirAccess::exists(GodotSharpDirs::get_api_assemblies_dir())) {
+		OS::get_singleton()->alert(vformat(RTR("Unable to find the .NET assemblies directory.\nMake sure the '%s' directory exists and contains the .NET assemblies."), GodotSharpDirs::get_api_assemblies_dir()), RTR(".NET assemblies not found"));
+		ERR_FAIL_MSG(".NET: Assemblies not found");
+	}
+
 	if (!load_hostfxr(hostfxr_dll_handle)) {
 #if !defined(TOOLS_ENABLED)
 		godot_plugins_initialize = try_load_native_aot_library(hostfxr_dll_handle);