diff --git a/Source/winchar.cpp b/Source/winchar.cpp index cb9a568a..8c9c8231 100644 --- a/Source/winchar.cpp +++ b/Source/winchar.cpp @@ -80,15 +80,15 @@ size_t winchar_strlen(WCHAR *ws) int winchar_strcmp(const WCHAR *ws1, const WCHAR *ws2) { - WCHAR diff = 0; + int diff = 0; do { - diff = *ws1 - *ws2; + diff = static_cast(*ws1) - static_cast(*ws2); } - while (*ws1++ && *ws2++); + while (*ws1++ && *ws2++ && !diff); - return static_cast(diff); + return diff; } int winchar_stoi(const WCHAR *ws)