[Libreoffice-commits] core.git: Branch 'libreoffice-5-0' - vcl/headless

Caolán McNamara caolanm at redhat.com
Wed Jul 1 09:06:42 PDT 2015


 vcl/headless/svptextrender.cxx |    9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

New commits:
commit 77552ecfb6501e856b4a400f19f4e25cfd2b63c4
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Jul 1 16:58:49 2015 +0100

    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)

diff --git a/vcl/headless/svptextrender.cxx b/vcl/headless/svptextrender.cxx
index f25e534..f143da1 100644
--- a/vcl/headless/svptextrender.cxx
+++ b/vcl/headless/svptextrender.cxx
@@ -424,17 +424,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;
 


More information about the Libreoffice-commits mailing list