From 0403f176bd7504272174131c4100673a2859dcb6 Mon Sep 17 00:00:00 2001 From: patchzyy <64382339+patchzyy@users.noreply.github.com> Date: Fri, 28 Aug 2026 01:25:13 +0200 Subject: [PATCH] fix accented paths --- runtime/include/runtime_config.h | 3 ++- runtime/src/hle/storage/riivolution.cpp | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/runtime/include/runtime_config.h b/runtime/include/runtime_config.h index 2501192..d52a849 100644 --- a/runtime/include/runtime_config.h +++ b/runtime/include/runtime_config.h @@ -776,7 +776,8 @@ inline std::string DvdRoot(std::string fallback = "") { // never to the process working directory (docs/WHEELWIZARD_CONTRACT.md). inline std::filesystem::path ResolveRelativeTo(const std::filesystem::path& base, const std::string& value) { - std::filesystem::path path(value); + // Config strings are UTF-8; the char overload would decode via the ANSI codepage. + std::filesystem::path path(reinterpret_cast(value.c_str())); if (path.is_relative()) { path = base / path; } diff --git a/runtime/src/hle/storage/riivolution.cpp b/runtime/src/hle/storage/riivolution.cpp index 8eb2348..69ed033 100644 --- a/runtime/src/hle/storage/riivolution.cpp +++ b/runtime/src/hle/storage/riivolution.cpp @@ -86,6 +86,8 @@ void RiivoAddRoot(std::vector& overlays, fs::path r const char* source) { std::error_code ec; if (!fs::is_directory(root, ec)) { + RT_LOG(RT_TAG_RIIVOLUTION) << "rejected overlay root (" << (source ? source : "unknown") + << "): " << root.string() << " is not a reachable directory" << std::endl; return; }