From f34939600a96d75047bcd96cd0cda38884f43e82 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Fri, 11 Nov 2022 15:24:15 +0100 Subject: actually always set console output codepage --- loader/init.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'loader') diff --git a/loader/init.cpp b/loader/init.cpp index d6a447e0..b4733ca7 100644 --- a/loader/init.cpp +++ b/loader/init.cpp @@ -1,11 +1,16 @@ #include "impl.hpp" + #ifdef _WIN32 #include -extern "C" __declspec(dllimport) long WINAPI RtlGetVersion (PRTL_OSVERSIONINFOEXW); +#if __has_include() +#include +#else +extern "C" __declspec(dllimport) long WINAPI RtlGetVersion(PRTL_OSVERSIONINFOEXW); +#endif #ifdef _MSC_VER #pragma comment(lib, "ntdll.lib") #endif -#endif +#endif // _WIN32 namespace floormat::loader_detail { @@ -24,11 +29,9 @@ static bool check_windows_build_number(unsigned major, unsigned minor, unsigned static void system_init_() { #ifdef _WIN32 + (void)::SetConsoleOutputCP(CP_UTF8); if (check_windows_build_number(10, 0, 17035)) - { - (void)::SetConsoleOutputCP(CP_UTF8); (void)::SetConsoleCP(CP_UTF8); - } #endif } -- cgit v1.2.3