From ecbda5686dfc0bae156fd3cb489369f79ba8fff2 Mon Sep 17 00:00:00 2001 From: Aric Stewart Date: Mon, 19 Jan 2015 08:11:51 -0600 Subject: [PATCH] gdi32: Do not install fonts with a family name that is too long. --- dlls/gdi32/freetype.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c index 62e19a5e41d..5122fb58c99 100644 --- a/dlls/gdi32/freetype.c +++ b/dlls/gdi32/freetype.c @@ -2024,6 +2024,14 @@ static void AddFaceToList(FT_Face ft_face, const char *file, void *font_data_ptr face = create_face( ft_face, face_index, file, font_data_ptr, font_data_size, flags ); family = get_family( ft_face, flags & ADDFONT_VERTICAL_FONT ); + if (strlenW(family->FamilyName) >= LF_FACESIZE) + { + ERR("Ignoring %s because name is too long\n", debugstr_w(family->FamilyName)); + release_face( face ); + release_family( family ); + return; + } + if (insert_face_in_family_list( face, family )) { if (flags & ADDFONT_ADD_TO_CACHE)