sw/qa/extras/ooxmlexport/data/tdf140668.docx      |binary
 sw/qa/extras/ooxmlexport/ooxmlexport16.cxx        |    6 ++++++
 writerfilter/source/dmapper/DomainMapper_Impl.hxx |    3 +--
 3 files changed, 7 insertions(+), 2 deletions(-)

New commits:
commit 027cc8c90badd4dd8a3436d859587c1b8732459f
Author:     Daniel Arato (NISZ) <arato.dan...@nisz.hu>
AuthorDate: Fri Feb 26 09:28:51 2021 +0100
Commit:     László Németh <nem...@numbertext.org>
CommitDate: Mon Mar 1 15:32:49 2021 +0100

    tdf#140668 Crashfix: disregard w:textDirection tag outside frame
    
    DomainMapper_Impl::SetFrameDirection had a false assumption that
    a w:textDirection tag will only be encountered when the OOXML
    parser is already inside a frame. This is not always the case.
    
    Regression from commit af4e5ee0f93c1ff442d08caed5c875f2b2c1fd43
    (tdf#97128 DOCX import: fix frame direction).
    
    Change-Id: I39845599b0c7f502870e2de497df8cbdd4475594
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111594
    Tested-by: Jenkins
    Tested-by: László Németh <nem...@numbertext.org>
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>
    Reviewed-by: László Németh <nem...@numbertext.org>

diff --git a/sw/qa/extras/ooxmlexport/data/tdf140668.docx 
b/sw/qa/extras/ooxmlexport/data/tdf140668.docx
new file mode 100644
index 000000000000..d7072187bb57
Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf140668.docx differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport16.cxx 
b/sw/qa/extras/ooxmlexport/ooxmlexport16.cxx
index 29798dcabdec..f53078d6a332 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport16.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport16.cxx
@@ -78,6 +78,12 @@ CPPUNIT_TEST_FIXTURE(Test, testGutterTop)
     assertXPath(pXmlSettings, "/w:settings/w:gutterAtTop", 1);
 }
 
+DECLARE_OOXMLEXPORT_TEST(testTdf140668, "tdf140668.docx")
+{
+    // Don't crash when document is opened
+    CPPUNIT_ASSERT_EQUAL(1, getPages());
+}
+
 DECLARE_OOXMLEXPORT_EXPORTONLY_TEST(testTdf134619_numberingProps, 
"tdf134619_numberingProps.doc")
 {
     // Get the third paragraph's numbering style's 1st level's bullet size
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.hxx 
b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
index 581d2dba6692..4a654822fb90 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.hxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
@@ -986,8 +986,7 @@ public:
         m_bFrameDirectionSet = false;
     }
     void SetFrameDirection(sal_Int16 nDirection) {
-        if (!m_bFrameDirectionSet) {
-            assert(!m_aFrameDirectionQueue.empty());
+        if (!m_bFrameDirectionSet && !m_aFrameDirectionQueue.empty()) {
             m_aFrameDirectionQueue.back() = nDirection;
             m_bFrameDirectionSet = true;
         }
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to