diff --git "a/win32ss/gdi/ntgdi/freetype.c" "b/win32ss/gdi/ntgdi/freetype.c" index 80b95b9bb31..a38221d2d37 100644 --- "a/win32ss/gdi/ntgdi/freetype.c" +++ "b/win32ss/gdi/ntgdi/freetype.c" @@ -5225,6 +5225,9 @@ TextIntRealizeFont(HFONT FontHandle, PTEXTOBJ pTextObj) DPRINT("Font '%S,%u' is substituted by: ", pLogFont->lfFaceName, pLogFont->lfCharSet); SubstituteFontRecurse(&SubstitutedLogFont); DPRINT("'%S,%u'.\n", SubstitutedLogFont.lfFaceName, SubstitutedLogFont.lfCharSet); + /* Handle at least two levels of indirection in Font Substitutes. */ + SubstituteFontRecurse(&SubstitutedLogFont); + DPRINT("'%S,%u'.\n", SubstitutedLogFont.lfFaceName, SubstitutedLogFont.lfCharSet); MatchPenalty = 0xFFFFFFFF; TextObj->Font = NULL;