sw/qa/extras/rtfexport/data/tdf129513.rtf      |    4 ++++
 sw/qa/extras/rtfexport/rtfexport5.cxx          |   11 +++++++++++
 writerfilter/source/rtftok/rtfdispatchflag.cxx |    1 -
 3 files changed, 15 insertions(+), 1 deletion(-)

New commits:
commit a3fa368f1a50463e1540619834df31f48cba6a7d
Author:     Mike Kaganski <mike.kagan...@collabora.com>
AuthorDate: Fri Dec 20 16:07:00 2019 +0300
Commit:     Xisco Faulí <xiscofa...@libreoffice.org>
CommitDate: Wed Jan 8 11:50:18 2020 +0100

    tdf#129513: drop incorrect and redundant erasure of paragraph sprm
    
    It was introduced in commit 2499397cb39330dabeb8b7b3e0d7eb6213a0d8f4
    "avoid sending duplicated paragraph flags", and supposedly was meant
    to avoid having duplicating sprms in the collected properties, when
    new properties were pushed back at that time. Using specific sprm id
    was likely a mistake (nParam should have been used instead).
    
    Now the new sprm is added using RTFSprms::set with eOverwrite having
    default value of RTFOverwrite::YES, which takes care to avoid dupes,
    so the call to erase is redundant.
    
    This reverts commit 2499397cb39330dabeb8b7b3e0d7eb6213a0d8f4.
    
    Change-Id: Ied19f6feb41bd17ef317812d4d295ca0542a5843
    Reviewed-on: https://gerrit.libreoffice.org/85602
    Tested-by: Jenkins
    Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com>
    (cherry picked from commit 989043b0644354b92fd17e4194897c2eb0935031)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85742
    Reviewed-by: Xisco Faulí <xiscofa...@libreoffice.org>

diff --git a/sw/qa/extras/rtfexport/data/tdf129513.rtf 
b/sw/qa/extras/rtfexport/data/tdf129513.rtf
new file mode 100644
index 000000000000..cc39953491d9
--- /dev/null
+++ b/sw/qa/extras/rtfexport/data/tdf129513.rtf
@@ -0,0 +1,4 @@
+{\rtf1
+\trowd\cellx2000\pard\intbl\pagebb
+In table
+\cell\row\pard\par }
\ No newline at end of file
diff --git a/sw/qa/extras/rtfexport/rtfexport5.cxx 
b/sw/qa/extras/rtfexport/rtfexport5.cxx
index 640cff9bec39..75678fb6971b 100644
--- a/sw/qa/extras/rtfexport/rtfexport5.cxx
+++ b/sw/qa/extras/rtfexport/rtfexport5.cxx
@@ -1164,6 +1164,17 @@ DECLARE_RTFEXPORT_TEST(testTdf128320, "tdf128320.odt")
     CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), nPos);
 }
 
+DECLARE_RTFEXPORT_TEST(testTdf129513, "tdf129513.rtf")
+{
+    // \pagebb after \intbl must not reset the "in table" flag
+    CPPUNIT_ASSERT_EQUAL(2, getParagraphs());
+    // Make sure the first paragraph is imported in table
+    uno::Reference<text::XTextTable> xTable(getParagraphOrTable(1), 
uno::UNO_QUERY_THROW);
+    CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xTable->getCellNames().getLength());
+    uno::Reference<text::XText> xCell(xTable->getCellByName("A1"), 
uno::UNO_QUERY_THROW);
+    CPPUNIT_ASSERT_EQUAL(OUString("In table"), xCell->getString());
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/writerfilter/source/rtftok/rtfdispatchflag.cxx 
b/writerfilter/source/rtftok/rtfdispatchflag.cxx
index 0c39866cd8df..894716b2897c 100644
--- a/writerfilter/source/rtftok/rtfdispatchflag.cxx
+++ b/writerfilter/source/rtftok/rtfdispatchflag.cxx
@@ -431,7 +431,6 @@ RTFError RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
     if (nParam >= 0)
     {
         auto pValue = new RTFValue(1);
-        m_aStates.top().getParagraphSprms().erase(NS_ooxml::LN_inTbl);
         m_aStates.top().getParagraphSprms().set(nParam, pValue);
         return RTFError::OK;
     }
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to