diff --git a/Client/loader-proxy/main.cpp b/Client/loader-proxy/main.cpp index 9acd3c9bda..0510f80a5e 100644 --- a/Client/loader-proxy/main.cpp +++ b/Client/loader-proxy/main.cpp @@ -56,6 +56,7 @@ auto AppendSystemError(std::wstring message, DWORD errorCode) -> std::wstring; auto MakeLauncherError(std::wstring message) -> std::wstring; auto MakeMissingFilesError(std::wstring message) -> std::wstring; void AddLaunchLog(const char* format, ...); +bool IEqual(std::wstring_view lhs, std::wstring_view rhs); HMODULE g_exe = nullptr; HMODULE g_core = nullptr; @@ -63,11 +64,6 @@ HMODULE g_netc = nullptr; VOID(WINAPI* Win32GetStartupInfoA)(LPSTARTUPINFOA) = nullptr; -inline bool IEqual(std::wstring_view lhs, std::wstring_view rhs) -{ - return (lhs.empty() && rhs.empty()) || !wcsnicmp(lhs.data(), rhs.data(), std::min(lhs.length(), rhs.length())); -} - BOOL WINAPI DllMain(HINSTANCE dll, DWORD reason, LPVOID) { if (reason == DLL_PROCESS_ATTACH) @@ -806,3 +802,17 @@ void AddLaunchLog(const char* format, ...) AddReportLog(5720, message); } + +/** + * @brief Compares two strings for equality (case-insensitive). +*/ +bool IEqual(std::wstring_view lhs, std::wstring_view rhs) +{ + if (lhs.size() != rhs.size()) + return false; + + if (lhs.empty() && rhs.empty()) + return true; + + return !wcsnicmp(lhs.data(), rhs.data(), lhs.length()); +}