Module: wine Branch: master Commit: cb80a250218f75673c50df85ffc7f16ec7c8e2c5 URL: https://gitlab.winehq.org/wine/wine/-/commit/cb80a250218f75673c50df85ffc7f16...
Author: Dmitry Timoshkov dmitry@baikal.ru Date: Thu Aug 18 13:00:45 2022 +0300
user32: Return DEFAULT_CHARSET from SPI_GETICONTITLELOGFONT and SPI_GETNONCLIENTMETRICS.
Signed-off-by: Dmitry Timoshkov dmitry@baikal.ru
---
dlls/user32/tests/sysparams.c | 3 +-- dlls/win32u/sysparams.c | 4 ++++ 2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/user32/tests/sysparams.c b/dlls/user32/tests/sysparams.c index a6bdf73dd34..e6a296f5d3a 100644 --- a/dlls/user32/tests/sysparams.c +++ b/dlls/user32/tests/sysparams.c @@ -4151,14 +4151,13 @@ static void test_LOGFONT_charset(void)
ret = SystemParametersInfoA(SPI_GETICONTITLELOGFONT, sizeof(lf), &lf, FALSE); ok(ret, "SystemParametersInfoW error %lu\n", GetLastError()); - todo_wine ok(lf.lfCharSet == DEFAULT_CHARSET, "got %d\n", lf.lfCharSet);
ncm.cbSize = FIELD_OFFSET(NONCLIENTMETRICSA, iPaddedBorderWidth); ret = SystemParametersInfoA(SPI_GETNONCLIENTMETRICS, 0, &ncm, 0); ok(ret, "SystemParametersInfoW error %lu\n", GetLastError()); - todo_wine ok(ncm.lfCaptionFont.lfCharSet == DEFAULT_CHARSET, "got %d\n", ncm.lfCaptionFont.lfCharSet); + ok(ncm.lfSmCaptionFont.lfCharSet == DEFAULT_CHARSET, "got %d\n", ncm.lfSmCaptionFont.lfCharSet); }
START_TEST(sysparams) diff --git a/dlls/win32u/sysparams.c b/dlls/win32u/sysparams.c index b134c5af680..9d23c533049 100644 --- a/dlls/win32u/sysparams.c +++ b/dlls/win32u/sysparams.c @@ -4247,12 +4247,14 @@ static BOOL get_font_entry( union sysparam_all_entry *entry, UINT int_param, voi switch (load_entry( &entry->hdr, &font, sizeof(font) )) { case sizeof(font): + font.lfCharSet = DEFAULT_CHARSET; if (font.lfHeight > 0) /* positive height value means points ( inch/72 ) */ font.lfHeight = -muldiv( font.lfHeight, USER_DEFAULT_SCREEN_DPI, 72 ); entry->font.val = font; break; case sizeof(LOGFONT16): /* win9x-winME format */ logfont16to32( (LOGFONT16 *)&font, &entry->font.val ); + entry->font.val.lfCharSet = DEFAULT_CHARSET; if (entry->font.val.lfHeight > 0) entry->font.val.lfHeight = -muldiv( entry->font.val.lfHeight, USER_DEFAULT_SCREEN_DPI, 72 ); break; @@ -4263,6 +4265,7 @@ static BOOL get_font_entry( union sysparam_all_entry *entry, UINT int_param, voi /* fall through */ case 0: /* use the default GUI font */ NtGdiExtGetObjectW( GetStockObject( DEFAULT_GUI_FONT ), sizeof(font), &font ); + font.lfCharSet = DEFAULT_CHARSET; font.lfHeight = map_from_system_dpi( font.lfHeight ); font.lfWeight = entry->font.weight; entry->font.val = font; @@ -4302,6 +4305,7 @@ static BOOL set_font_entry( union sysparam_all_entry *entry, UINT int_param, voi static BOOL init_font_entry( union sysparam_all_entry *entry ) { NtGdiExtGetObjectW( GetStockObject( DEFAULT_GUI_FONT ), sizeof(entry->font.val), &entry->font.val ); + entry->font.val.lfCharSet = DEFAULT_CHARSET; entry->font.val.lfHeight = map_from_system_dpi( entry->font.val.lfHeight ); entry->font.val.lfWeight = entry->font.weight; get_real_fontname( &entry->font.val, entry->font.fullname );