From 394c0eb225bd3b9bd0419b3006367d24b34a9a8d Mon Sep 17 00:00:00 2001 From: Raul Santos Date: Fri, 15 Sep 2023 12:29:37 +0200 Subject: [PATCH] C#: Hide hostfxr not found error Godot tries to find hostfxr in two locations, the method that tries to retrieve the location printed an error when it was not found. So when the first location fails it was printing an error, even if the second location succeeded, and users were left confused thinking there was something wrong with their installation. Now the error will only be printed when stdout verbose is enabled. Users will still get an error later if hostfxr is not found in any of the two locations. --- modules/mono/editor/hostfxr_resolver.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/mono/editor/hostfxr_resolver.cpp b/modules/mono/editor/hostfxr_resolver.cpp index 04bd6a920732..4f15335c1ef7 100644 --- a/modules/mono/editor/hostfxr_resolver.cpp +++ b/modules/mono/editor/hostfxr_resolver.cpp @@ -320,7 +320,12 @@ bool get_dotnet_root_from_env(String &r_dotnet_root) { bool godotsharp::hostfxr_resolver::try_get_path_from_dotnet_root(const String &p_dotnet_root, String &r_fxr_path) { String fxr_dir = path::join(p_dotnet_root, "host", "fxr"); - ERR_FAIL_COND_V_MSG(!DirAccess::exists(fxr_dir), false, "The host fxr folder does not exist: " + fxr_dir); + if (!DirAccess::exists(fxr_dir)) { + if (OS::get_singleton()->is_stdout_verbose()) { + ERR_PRINT("The host fxr folder does not exist: " + fxr_dir + "."); + } + return false; + } return get_latest_fxr(fxr_dir, r_fxr_path); }