msvcrt: Added _strcoll_l implementation.

This commit is contained in:
Piotr Caban 2011-05-12 11:39:10 +02:00 committed by Alexandre Julliard
parent b88c851820
commit e07dbe2c0a
2 changed files with 14 additions and 3 deletions

View File

@ -919,7 +919,7 @@
@ cdecl _stati64(str ptr) MSVCRT_stati64
@ cdecl _statusfp()
@ cdecl _strcmpi(str str) ntdll._strcmpi
# stub _strcoll_l(str str ptr)
@ cdecl _strcoll_l(str str ptr) MSVCRT_strcoll_l
@ cdecl _strdate(ptr)
@ cdecl _strdate_s(ptr long)
@ cdecl _strdup(str)

View File

@ -31,6 +31,7 @@
#include <limits.h>
#include <errno.h>
#include "msvcrt.h"
#include "winnls.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(msvcrt);
@ -526,13 +527,23 @@ int CDECL MSVCRT__atoflt_l( MSVCRT__CRT_FLOAT *value, char *str, MSVCRT__locale_
return ret;
}
/*********************************************************************
* _strcoll_l (MSVCRT.@)
*/
int CDECL MSVCRT_strcoll_l( const char* str1, const char* str2, MSVCRT__locale_t locale )
{
if(!locale)
locale = get_locale();
return CompareStringA(locale->locinfo->lc_handle[MSVCRT_LC_CTYPE], 0, str1, -1, str2, -1)-2;
}
/*********************************************************************
* strcoll (MSVCRT.@)
*/
int CDECL MSVCRT_strcoll( const char* str1, const char* str2 )
{
/* FIXME: handle Windows locale */
return strcoll( str1, str2 );
return MSVCRT_strcoll_l(str1, str2, NULL);
}
/*********************************************************************