[PATCH 0/2] MR628: win32u: Fix the second_name parsed wrong.
When first parsed to names in english and other non-native languages, after parsing to names in native languages, this will result in second_name not corresponding to names in english. Signed-off-by: Jiajin Cui <cuijiajin(a)uniontech.com> -- https://gitlab.winehq.org/wine/wine/-/merge_requests/628
From: Jiajin Cui <cuijiajin(a)uniontech.com> When first parsed to names in english and other non-native languages, after parsing to names in native languages, this will result in second_name not corresponding to names in english. Signed-off-by: Jiajin Cui <cuijiajin(a)uniontech.com> --- dlls/win32u/freetype.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/win32u/freetype.c b/dlls/win32u/freetype.c index f00df7ed86d..f6cdddd7819 100644 --- a/dlls/win32u/freetype.c +++ b/dlls/win32u/freetype.c @@ -1100,7 +1100,7 @@ static BOOL search_family_names_callback( LANGID langid, struct opentype_name *n else if (data->primary_langid == langid) { data->primary_seen = TRUE; - if (!data->second_name.bytes) data->second_name = data->family_name; + if (data->family_name.bytes) data->second_name = data->family_name; data->family_name = *name; } else if (!data->second_name.bytes) data->second_name = *name; -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/628
From: Jiajin Cui <cuijiajin(a)uniontech.com> Get font face error when the replaced font is used to replace other fonts. Signed-off-by: Jiajin Cui <cuijiajin(a)uniontech.com> --- dlls/win32u/font.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dlls/win32u/font.c b/dlls/win32u/font.c index 5ea89c9220e..9af7d1c8697 100644 --- a/dlls/win32u/font.c +++ b/dlls/win32u/font.c @@ -853,7 +853,9 @@ static struct gdi_font_face *find_face_from_full_name( const WCHAR *full_name ) static const struct list *get_family_face_list( const struct gdi_font_family *family ) { - return family->replacement ? &family->replacement->faces : &family->faces; + struct gdi_font_family *true_family = family->replacement ? family->replacement : family; + while(true_family->replacement) {true_family = true_family->replacement;} + return &true_family->faces; } static struct gdi_font_face *family_find_face_from_filename( struct gdi_font_family *family, const WCHAR *file_name ) -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/628
participants (2)
-
Jiajin Cui -
Jiajin Cui (@jin-king1)