Module: wine Branch: master Commit: b1e17a053a66d06532aa0b8258569d5efc51a806 URL: https://source.winehq.org/git/wine.git/?a=commit;h=b1e17a053a66d06532aa0b825...
Author: Alexandre Julliard julliard@winehq.org Date: Mon Mar 28 12:42:21 2022 +0200
kernelbase: Reimplement LOCALE_*DEFAULTCODEPAGE in GetLocaleInfoW/Ex using the locale.nls data.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/kernelbase/locale.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/dlls/kernelbase/locale.c b/dlls/kernelbase/locale.c index 2e512240b2b..7f8c51a8414 100644 --- a/dlls/kernelbase/locale.c +++ b/dlls/kernelbase/locale.c @@ -932,7 +932,8 @@ static int get_locale_info( const NLS_LOCALE_DATA *locale, LCID lcid, LCTYPE typ return -1;
case LOCALE_IDEFAULTCODEPAGE: - return -1; + val = locale->idefaultcodepage == CP_UTF8 ? CP_OEMCP : locale->idefaultcodepage; + return locale_return_number( val, type, buffer, len );
case LOCALE_SLIST: return -1; @@ -1213,7 +1214,8 @@ static int get_locale_info( const NLS_LOCALE_DATA *locale, LCID lcid, LCTYPE typ return -1;
case LOCALE_IDEFAULTANSICODEPAGE: - return -1; + val = locale->idefaultansicodepage == CP_UTF8 ? CP_ACP : locale->idefaultansicodepage; + return locale_return_number( val, type, buffer, len );
case LOCALE_ITIMEMARKPOSN: return -1; @@ -1252,10 +1254,11 @@ static int get_locale_info( const NLS_LOCALE_DATA *locale, LCID lcid, LCTYPE typ return -1;
case LOCALE_IDEFAULTMACCODEPAGE: - return -1; + val = locale->idefaultmaccodepage == CP_UTF8 ? CP_MACCP : locale->idefaultmaccodepage; + return locale_return_number( val, type, buffer, len );
case LOCALE_IDEFAULTEBCDICCODEPAGE: - return -1; + return locale_return_number( locale->idefaultebcdiccodepage, type, buffer, len );
case LOCALE_SSORTNAME: return -1;