-- v2: msvcrt: Fix string size passed to CompareString in _mbsnbcoll_l.
From: Piotr Caban piotr@codeweavers.com
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55959 --- dlls/msvcrt/mbcs.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/msvcrt/mbcs.c b/dlls/msvcrt/mbcs.c index 2e228d77811..ce8a3115eeb 100644 --- a/dlls/msvcrt/mbcs.c +++ b/dlls/msvcrt/mbcs.c @@ -1110,7 +1110,9 @@ int CDECL _mbsnbicoll_l(const unsigned char *str1, const unsigned char *str2, si
if(!mbcinfo->ismbcodepage) return _strnicoll_l((const char*)str1, (const char*)str2, len, locale); - return CompareStringA(mbcinfo->mblcid, NORM_IGNORECASE, (const char*)str1, len, (const char*)str2, len)-CSTR_EQUAL; + return CompareStringA(mbcinfo->mblcid, NORM_IGNORECASE, + (const char*)str1, strnlen((const char*)str1, len), + (const char*)str2, strnlen((const char*)str2, len)) - CSTR_EQUAL; }
/********************************************************************* @@ -1156,7 +1158,9 @@ int CDECL _mbsnbcoll_l(const unsigned char *str1, const unsigned char *str2, siz
if(!mbcinfo->ismbcodepage) return _strncoll_l((const char*)str1, (const char*)str2, len, locale); - return CompareStringA(mbcinfo->mblcid, 0, (const char*)str1, len, (const char*)str2, len)-CSTR_EQUAL; + return CompareStringA(mbcinfo->mblcid, 0, + (const char*)str1, strnlen((const char*)str1, len), + (const char*)str2, strnlen((const char*)str2, len)) - CSTR_EQUAL; }
/*********************************************************************