vcl/source/gdi/impglyphitem.cxx |    4 ++++
 1 file changed, 4 insertions(+)

New commits:
commit 5468a58c3244cf98341945c17db040b067c825f7
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Wed Sep 21 15:31:45 2022 +0100
Commit:     Caolán McNamara <caol...@redhat.com>
CommitDate: Wed Sep 21 20:37:07 2022 +0200

    crashtesting: disable glyph caching for "XB Roya" font
    
    as seen in tdf119074-1.odt. harfbuzz upstream bug of
    https://github.com/harfbuzz/harfbuzz/issues/3824 filed to look for
    guidance.
    
    Change-Id: I792f86334c2a2958b175a0e14334a0a7a6ba81d8
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140345
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caol...@redhat.com>

diff --git a/vcl/source/gdi/impglyphitem.cxx b/vcl/source/gdi/impglyphitem.cxx
index 7bed1391c0d5..a8eed4a02020 100644
--- a/vcl/source/gdi/impglyphitem.cxx
+++ b/vcl/source/gdi/impglyphitem.cxx
@@ -327,6 +327,10 @@ SalLayoutGlyphsCache::GetLayoutGlyphs(VclPtr<const 
OutputDevice> outputDevice, c
     if (nLen == 0)
         return nullptr;
     const CachedGlyphsKey key(outputDevice, text, nIndex, nLen, nLogicWidth);
+    // for now disable if the font is the one seen in tdf#119074
+    // https://github.com/harfbuzz/harfbuzz/issues/3824
+    if (key.fontMetric.GetFamilyName() == "XB Roya")
+        return nullptr;
     GlyphsCache::const_iterator it = mCachedGlyphs.find(key);
     if (it != mCachedGlyphs.end())
     {

Reply via email to