diff --git a/dlls/gdi32/font.c b/dlls/gdi32/font.c index 1e8cac33fae..21d2ebb52ca 100644 --- a/dlls/gdi32/font.c +++ b/dlls/gdi32/font.c @@ -484,14 +484,11 @@ static HGDIOBJ FONT_SelectObject( HGDIOBJ handle, HDC hdc ) return 0; } - if (dc->hFont != handle || dc->gdiFont == NULL) + if (GetDeviceCaps( dc->hSelf, TEXTCAPS ) & TC_VA_ABLE) { - if(GetDeviceCaps(dc->hSelf, TEXTCAPS) & TC_VA_ABLE) - { - FONTOBJ *font = GDI_GetObjPtr( handle, FONT_MAGIC ); /* to grab the GDI lock (FIXME) */ - dc->gdiFont = WineEngCreateFontInstance(dc, handle); - if (font) GDI_ReleaseObj( handle ); - } + FONTOBJ *font = GDI_GetObjPtr( handle, FONT_MAGIC ); /* to grab the GDI lock (FIXME) */ + dc->gdiFont = WineEngCreateFontInstance( dc, handle ); + if (font) GDI_ReleaseObj( handle ); } if (dc->funcs->pSelectFont) ret = dc->funcs->pSelectFont( dc->physDev, handle, dc->gdiFont );