[Libreoffice-commits] core.git: Branch 'libreoffice-6-2' - sw/source

Khaled Hosny (via logerrit) logerrit at kemper.freedesktop.org
Fri Mar 22 13:58:20 UTC 2019


 sw/source/core/txtnode/fntcache.cxx |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

New commits:
commit b2e81e11e154b660172356969252f00ba63f3a2b
Author:     Khaled Hosny <khaledhosny at eglug.org>
AuthorDate: Thu Mar 21 18:00:54 2019 +0200
Commit:     Miklos Vajna <vmiklos at collabora.com>
CommitDate: Fri Mar 22 14:57:56 2019 +0100

    tdf#124109: Fix missing kashida glyphs
    
    This partially reverts:
    
    commit 436b829f5b904d76039db0818cff5dedf1ae89f1
    Author: Miklos Vajna <vmiklos at collabora.co.uk>
    Date:   Thu Aug 16 17:35:17 2018 +0200
    
        sw: save one vcl layout call in SwFntObj::DrawText()
    
        Pressing a key in Writer used to lay out the relevant string 4 times
        (counting GenericSalLayout::LayoutText() invocations), save one of them
        by pre-calculating the layout and sharing it between GetTextArray() and
        DrawTextArray().
    
    The reverted part was causing inserted Kashida to be missing, leaving gaps
    inside the words. See attachment in the bug report.
    
    Change-Id: Iaafbc793ed5906e6fdf3dcb03c54d5a440e15da4
    Reviewed-on: https://gerrit.libreoffice.org/69530
    Tested-by: Jenkins
    Reviewed-by: Miklos Vajna <vmiklos at collabora.com>
    (cherry picked from commit f8ca6e0a59bff51fcb09af4fa6d9cd458b32f223)
    Reviewed-on: https://gerrit.libreoffice.org/69547

diff --git a/sw/source/core/txtnode/fntcache.cxx b/sw/source/core/txtnode/fntcache.cxx
index 55278e70011c..175821ab90ef 100644
--- a/sw/source/core/txtnode/fntcache.cxx
+++ b/sw/source/core/txtnode/fntcache.cxx
@@ -1811,9 +1811,8 @@ void SwFntObj::DrawText( SwDrawTextInfo &rInf )
                             ? (rInf.GetIdx() ? 1 : 0)
                             : sal_Int32(rInf.GetIdx());
                 aGlyphsKey = SwTextGlyphsKey{ &rInf.GetOut(), *pStr, nTmpIdx, nLen };
-                pGlyphs = lcl_CreateLayout(aGlyphsKey, m_aTextGlyphs[aGlyphsKey]);
                 rInf.GetOut().DrawTextArray( aTextOriginPos, *pStr, pKernArray.get(),
-                                             nTmpIdx , nLen, SalLayoutFlags::NONE, pGlyphs );
+                                             nTmpIdx , nLen );
                 if (bBullet)
                 {
                     rInf.GetOut().Push();


More information about the Libreoffice-commits mailing list