[NTGDI:FREETYPE] Fix Fonts broken by opening VLC About (Retry of PR #4579) (#7952)

* Check is FontGDI->OriginalWeight > FontGDI->RequestWeight and if so, then return original weight.
* Do not handle FontGDI->OriginalWeight as a boolean. Use 'FontGDI->OriginalWeight = FW_DONTCARE;'.

CORE-17011
This commit is contained in:
Doug Lyons 2025-05-01 17:44:10 -05:00 committed by GitHub
parent bbd6a57c0f
commit e98bba2535
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1816,7 +1816,7 @@ IntGdiLoadFontsFromMemory(PGDI_LOAD_FONT pLoadFont,
FontGDI->CharSet = ANSI_CHARSET;
FontGDI->OriginalItalic = FALSE;
FontGDI->RequestItalic = FALSE;
FontGDI->OriginalWeight = FALSE;
FontGDI->OriginalWeight = FW_DONTCARE;
FontGDI->RequestWeight = FW_NORMAL;
IntLockFreeType();
@ -2921,7 +2921,7 @@ FillTM(TEXTMETRICW *TM, PFONTGDI FontGDI,
TM->tmMaxCharWidth = (FT_MulFix(Face->max_advance_width, XScale) + 32) >> 6;
if (FontGDI->OriginalWeight != FW_DONTCARE &&
FontGDI->OriginalWeight != FW_NORMAL)
FontGDI->OriginalWeight > FontGDI->RequestWeight)
{
TM->tmWeight = FontGDI->OriginalWeight;
}