usp10: Do not try to fallback if no fallback font is specified.

This commit is contained in:
Aric Stewart 2011-12-15 09:51:21 -06:00 committed by Alexandre Julliard
parent 5086bb2cd9
commit 6fe14a0153
1 changed files with 8 additions and 4 deletions

View File

@ -1719,7 +1719,10 @@ HRESULT WINAPI ScriptStringAnalyse(HDC hdc, const void *pString, int cString,
LOGFONTW lf; LOGFONTW lf;
GetObjectW(GetCurrentObject(hdc, OBJ_FONT), sizeof(lf), & lf); GetObjectW(GetCurrentObject(hdc, OBJ_FONT), sizeof(lf), & lf);
lf.lfCharSet = scriptInformation[analysis->pItem[i].a.eScript].props.bCharSet; lf.lfCharSet = scriptInformation[analysis->pItem[i].a.eScript].props.bCharSet;
lf.lfFaceName[0] = 0;
find_fallback_font(analysis->pItem[i].a.eScript, lf.lfFaceName); find_fallback_font(analysis->pItem[i].a.eScript, lf.lfFaceName);
if (lf.lfFaceName[0])
{
analysis->glyphs[i].fallbackFont = CreateFontIndirectW(&lf); analysis->glyphs[i].fallbackFont = CreateFontIndirectW(&lf);
if (analysis->glyphs[i].fallbackFont) if (analysis->glyphs[i].fallbackFont)
{ {
@ -1727,6 +1730,7 @@ HRESULT WINAPI ScriptStringAnalyse(HDC hdc, const void *pString, int cString,
originalFont = SelectObject(hdc, analysis->glyphs[i].fallbackFont); originalFont = SelectObject(hdc, analysis->glyphs[i].fallbackFont);
} }
} }
}
hr = ScriptShape(hdc, sc, &pStr[analysis->pItem[i].iCharPos], hr = ScriptShape(hdc, sc, &pStr[analysis->pItem[i].iCharPos],
cChar, numGlyphs, &analysis->pItem[i].a, cChar, numGlyphs, &analysis->pItem[i].a,