From 9177c69baea368dd3561249372995bd7a128358a Mon Sep 17 00:00:00 2001 From: Wohlstand Date: Wed, 18 Oct 2017 03:29:38 +0300 Subject: Avoid possible UTF8 vs ANSI trouble on Windows --- src/adlmidi_private.hpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/adlmidi_private.hpp') diff --git a/src/adlmidi_private.hpp b/src/adlmidi_private.hpp index e039f85..5d5da0a 100644 --- a/src/adlmidi_private.hpp +++ b/src/adlmidi_private.hpp @@ -45,6 +45,7 @@ typedef __int32 ssize_t; #endif #endif + #include #endif #include @@ -343,7 +344,14 @@ public: void openFile(const char *path) { + #ifndef _WIN32 fp = std::fopen(path, "rb"); + #else + wchar_t widePath[MAX_PATH]; + int size = MultiByteToWideChar(CP_UTF8, 0, path, std::strlen(path), widePath, MAX_PATH); + widePath[size] = '\0'; + fp = _wfopen(widePath, L"wb"); + #endif _fileName = path; mp = NULL; mp_size = 0; -- cgit v1.2.3