stdlib: Corrected implementation of SDL_wcsncmp.

It was a copy/paste of SDL_strcmp, apparently, not SDL_strncmp, so it ignored
the maxlen parameter.

Thanks to Jack Powell for pointing this out!
Ryan C. Gordon 2020-07-24 22:24:03 -04:00
parent c7eb557d89
commit e410b34f92
1 changed files with 7 additions and 2 deletions

View File

@ -516,13 +516,18 @@ SDL_wcsncmp(const wchar_t *str1, const wchar_t *str2, size_t maxlen)
#if defined(HAVE_WCSNCMP)
return wcsncmp(str1, str2, maxlen);
#else
while (*str1 && *str2) {
while (*str1 && *str2 && maxlen) {
if (*str1 != *str2)
break;
++str1;
++str2;
--maxlen;
}
return (int)(*str1 - *str2);
if (!maxlen) {
return 0;
}
return (int) (*str1 - *str2);
#endif /* HAVE_WCSNCMP */
}