mirror of
https://github.com/reactos/reactos.git
synced 2024-10-06 17:35:07 +00:00
patch from Yaroslav Ponomarenko yarryp at gmail dot com
NtGdiExtTextOut did try render no existed glyth in the glyth cache svn path=/trunk/; revision=27568
This commit is contained in:
parent
08344fca94
commit
06641a82b7
|
@ -1872,15 +1872,22 @@ NtGdiExtTextOut(
|
|||
if (!(realglyph = NtGdiGlyphCacheGet(face, glyph_index,
|
||||
TextObj->logfont.elfEnumLogfontEx.elfLogFont.lfHeight)))
|
||||
{
|
||||
error = FT_Load_Glyph(face, glyph_index, FT_LOAD_DEFAULT);
|
||||
if (error)
|
||||
{
|
||||
DPRINT1("WARNING: Failed to load and render glyph! [index: %u]\n", glyph_index);
|
||||
}
|
||||
error = FT_Load_Glyph(face, glyph_index, FT_LOAD_DEFAULT);
|
||||
if (error)
|
||||
{
|
||||
DPRINT1("WARNING: Failed to load and render glyph! [index: %u]\n", glyph_index);
|
||||
}
|
||||
|
||||
glyph = face->glyph;
|
||||
realglyph = NtGdiGlyphCacheSet(face, glyph_index,
|
||||
TextObj->logfont.elfEnumLogfontEx.elfLogFont.lfHeight, glyph, RenderMode);
|
||||
if (!realglyph)
|
||||
{
|
||||
DPRINT1("Failed to render glyph! [index: %u]\n", glyph_index);
|
||||
IntUnLockFreeType;
|
||||
goto fail;
|
||||
}
|
||||
|
||||
glyph = face->glyph;
|
||||
realglyph = NtGdiGlyphCacheSet(face, glyph_index,
|
||||
TextObj->logfont.elfEnumLogfontEx.elfLogFont.lfHeight, glyph, RenderMode);
|
||||
}
|
||||
/* retrieve kerning distance */
|
||||
if (use_kerning && previous && glyph_index)
|
||||
|
@ -1927,10 +1934,9 @@ NtGdiExtTextOut(
|
|||
TextObj->logfont.elfEnumLogfontEx.elfLogFont.lfHeight)))
|
||||
{
|
||||
error = FT_Load_Glyph(face, glyph_index, FT_LOAD_DEFAULT);
|
||||
|
||||
if (error)
|
||||
{
|
||||
DPRINT1("WARNING: Failed to load and render glyph! [index: %u]\n", glyph_index);
|
||||
DPRINT1("Failed to load and render glyph! [index: %u]\n", glyph_index);
|
||||
IntUnLockFreeType;
|
||||
goto fail;
|
||||
}
|
||||
|
@ -1940,6 +1946,12 @@ NtGdiExtTextOut(
|
|||
TextObj->logfont.elfEnumLogfontEx.elfLogFont.lfHeight,
|
||||
glyph,
|
||||
RenderMode);
|
||||
if (!realglyph)
|
||||
{
|
||||
DPRINT1("Failed to render glyph! [index: %u]\n", glyph_index);
|
||||
IntUnLockFreeType;
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
// DbgPrint("realglyph: %x\n", realglyph);
|
||||
// DbgPrint("TextLeft: %d\n", TextLeft);
|
||||
|
|
Loading…
Reference in a new issue