summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-07-01 16:58:49 +0100
committerAndras Timar <andras.timar@collabora.com>2015-08-06 12:52:51 +0200
commitf77b0f1762acd124fa037b81dcd33750e0a2b7f6 (patch)
treea3ec894faa48bf17d0f42b30ad41028400503c6d /vcl
parent917069fcd89072c785222b11b30d54a3fe83d997 (diff)
Resolves: tdf#92461 fix font fallback in headless text renderer
This suggests that the GF_FONTSHIFT thing is very broken as its level 0 for all the font renderers here, but follow the working pattern for now Change-Id: Ia180a40071157ead9a3b04c05658a6574dd5f864 (cherry picked from commit f4f844952f1213283133fc848b0781bb0ce3bb53)
Diffstat (limited to 'vcl')
-rw-r--r--vcl/headless/svptextrender.cxx9
1 files changed, 2 insertions, 7 deletions
diff --git a/vcl/headless/svptextrender.cxx b/vcl/headless/svptextrender.cxx
index 80969c05f6af..65dc37564c37 100644
--- a/vcl/headless/svptextrender.cxx
+++ b/vcl/headless/svptextrender.cxx
@@ -425,17 +425,12 @@ void SvpTextRender::DrawServerFontLayout( const ServerFontLayout& rSalLayout )
SvpGlyphPeer& rGlyphPeer = SvpGlyphCache::GetInstance().GetPeer();
for( int nStart = 0; rSalLayout.GetNextGlyphs( 1, &aGlyphId, aPos, nStart ); )
{
- int nLevel = aGlyphId >> GF_FONTSHIFT;
- DBG_ASSERT( nLevel < MAX_FALLBACK, "SvpGDI: invalid glyph fallback level" );
- ServerFont* pSF = m_pServerFont[ nLevel ];
- if( !pSF )
- continue;
-
+ ServerFont& rFont = rSalLayout.GetServerFont();
// get the glyph's alpha mask and adjust the drawing position
aGlyphId &= GF_IDXMASK;
B2IPoint aDstPoint( aPos.X(), aPos.Y() );
BitmapDeviceSharedPtr aAlphaMask
- = rGlyphPeer.GetGlyphBmp( *pSF, aGlyphId, m_eTextFmt, aDstPoint );
+ = rGlyphPeer.GetGlyphBmp(rFont, aGlyphId, m_eTextFmt, aDstPoint);
if( !aAlphaMask ) // ignore empty glyphs
continue;