mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-03 04:13:31 +00:00
[KERNEL32]
* Sync GetLocaleInfoW with Wine 1.5.26. CORE-7281 svn path=/trunk/; revision=59614
This commit is contained in:
@@ -754,6 +754,10 @@ INT WINAPI GetLocaleInfoA( LCID lcid, LCTYPE lctype, LPSTR buffer, INT len )
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int get_value_base_by_lctype( LCTYPE lctype )
|
||||
{
|
||||
return lctype == LOCALE_ILANGUAGE || lctype == LOCALE_IDEFAULTLANGUAGE ? 16 : 10;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* GetLocaleInfoW (KERNEL32.@)
|
||||
@@ -807,7 +811,7 @@ INT WINAPI GetLocaleInfoW( LCID lcid, LCTYPE lctype, LPWSTR buffer, INT len )
|
||||
if (ret > 0)
|
||||
{
|
||||
WCHAR *end;
|
||||
UINT number = strtolW( tmp, &end, 10 );
|
||||
UINT number = strtolW( tmp, &end, get_value_base_by_lctype( lctype ) );
|
||||
if (*end) /* invalid number */
|
||||
{
|
||||
SetLastError( ERROR_INVALID_FLAGS );
|
||||
@@ -880,7 +884,7 @@ INT WINAPI GetLocaleInfoW( LCID lcid, LCTYPE lctype, LPWSTR buffer, INT len )
|
||||
if (!tmp) return 0;
|
||||
memcpy( tmp, p + 1, *p * sizeof(WCHAR) );
|
||||
tmp[*p] = 0;
|
||||
number = strtolW( tmp, &end, 10 );
|
||||
number = strtolW( tmp, &end, get_value_base_by_lctype( lctype ) );
|
||||
if (!*end)
|
||||
memcpy( buffer, &number, sizeof(number) );
|
||||
else /* invalid number */
|
||||
|
||||
Reference in New Issue
Block a user