Rebased ref, commits from common ancestor:
commit 161df254820286219d0b00c3550766ea2ab4588b
Author: Caolán McNamara <caol...@redhat.com>
Date:   Wed Nov 15 15:44:20 2017 +0000

    crashtesting: assert on export of fdo59645-3.odt to docx
    
    probably since...
    
    commit 3f2e84b4bd0bbd936e0af845ba7cbf68cb2803d6
    Date:   Tue Oct 31 23:39:26 2017 +0100
    
        tdf#38778 Fix output of the font in DOC run
    
        The font information should be output before field declaration.
        Added unit test.
    
        tdf#38778 DOCX output: no double output of the font info
    
    need to also not double output the complex script font info as well
    as the western and ctl info
    
    I misread hAnsi as Asian the last time so thought CJK was already
    handled, handle it for real this time
    
    Change-Id: If57a3ca3f96a7b76f1fb8702a0d5071c0b3e5cd9
    Reviewed-on: https://gerrit.libreoffice.org/44771
    Reviewed-by: Serge Krot (CIB) <serge.k...@cib.de>
    Tested-by: Serge Krot (CIB) <serge.k...@cib.de>
    Reviewed-on: https://gerrit.libreoffice.org/44779
    Reviewed-by: Thorsten Behrens <thorsten.behr...@cib.de>
    Tested-by: Thorsten Behrens <thorsten.behr...@cib.de>

diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx 
b/sw/source/filter/ww8/docxattributeoutput.cxx
index 0ffdd716b88c..96c593983795 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -6731,6 +6731,14 @@ void DocxAttributeOutput::CharBackground( const 
SvxBrushItem& rBrush )
 
 void DocxAttributeOutput::CharFontCJK( const SvxFontItem& rFont )
 {
+    if (m_pFontsAttrList.is() && m_pFontsAttrList->hasAttribute(FSNS(XML_w, 
XML_eastAsia)))
+    {
+        // tdf#38778: do to fields output into DOC the font could be added 
before and after field declaration
+        // that all sub runs of the field will have correct font inside.
+        // For DOCX we should do not add the same font information twice in 
the same node
+        return;
+    }
+
     const OUString& sFontName(rFont.GetFamilyName());
     OString sFontNameUtf8 = OUStringToOString(sFontName, 
RTL_TEXTENCODING_UTF8);
     AddToAttrList( m_pFontsAttrList, FSNS( XML_w, XML_eastAsia ), 
sFontNameUtf8.getStr() );
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to