summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLászló Németh <nemeth@numbertext.org>2020-07-01 18:14:39 +0200
committerLászló Németh <nemeth@numbertext.org>2020-07-02 22:15:30 +0200
commit45504ca72e0f081de9e7cc4f1faf553c7361694d (patch)
tree196e3465f5f86db32bddcdf6226a69c60c5c46dd
parent2b6fe73ddcd845b5dde581e3802cb29d804f7876 (diff)
tdf#133735 DOCX: fix paragraph settings of nested tables
First row of a nested tables lost its paragraph settings, by dropping the collected paragraph data of the unfinished row. Regression from commit 81ce88aa80f8e7cde4fdc5b211e9500a3599643c (tdf#132514 DOCX import: fix lost table style with footer) Change-Id: I17d81d0906f424fe35237ac285e8ad27090bcab0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97645 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
-rw-r--r--sw/qa/extras/ooxmlexport/ooxmlexport10.cxx11
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableManager.cxx3
2 files changed, 14 insertions, 0 deletions
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport10.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport10.cxx
index f4c29f271bcd..13d6f679bbae 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport10.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport10.cxx
@@ -375,6 +375,17 @@ DECLARE_OOXMLEXPORT_EXPORTONLY_TEST(testFdo73389,"fdo73389.docx")
assertXPath(pXmlDoc, "/w:document/w:body/w:tbl/w:tr/w:tc/w:tbl/w:tblPr/w:tblW","w","1611");
}
+DECLARE_OOXMLEXPORT_EXPORTONLY_TEST(testTdf133735, "fdo73389.docx")
+{
+ xmlDocUniquePtr pXmlDoc = parseExport();
+
+ assertXPath(pXmlDoc, "/w:document/w:body/w:tbl/w:tr/w:tc/w:tbl/w:tr[2]/w:tc[1]/w:p/w:pPr/w:spacing", "after", "0");
+ // This was 200
+ assertXPath(pXmlDoc, "/w:document/w:body/w:tbl/w:tr/w:tc/w:tbl/w:tr[1]/w:tc[1]/w:p/w:pPr/w:spacing", "after", "0");
+ assertXPath(pXmlDoc, "/w:document/w:body/w:tbl/w:tr/w:tc/w:tbl/w:tr[1]/w:tc[2]/w:p/w:pPr/w:spacing", "after", "0");
+ assertXPath(pXmlDoc, "/w:document/w:body/w:tbl/w:tr/w:tc/w:tbl/w:tr[1]/w:tc[3]/w:p/w:pPr/w:spacing", "after", "0");
+}
+
DECLARE_OOXMLEXPORT_EXPORTONLY_TEST(testTdf59274, "tdf59274.docx")
{
// Table with "auto" table width and incomplete grid: 11 columns, but only 4 gridCol elements.
diff --git a/writerfilter/source/dmapper/DomainMapperTableManager.cxx b/writerfilter/source/dmapper/DomainMapperTableManager.cxx
index d0f46d312128..2d75c971b85a 100644
--- a/writerfilter/source/dmapper/DomainMapperTableManager.cxx
+++ b/writerfilter/source/dmapper/DomainMapperTableManager.cxx
@@ -580,6 +580,7 @@ void DomainMapperTableManager::endOfRowAction()
IntVectorPtr pTmpCellWidths = m_aCellWidths.back();
sal_uInt32 nTmpCell = m_nCell.back();
sal_uInt32 nTmpGridBefore = m_aGridBefore.back();
+ TableParagraphVectorPtr pTableParagraphs = getCurrentParagraphs();
// endLevel and startLevel are taking care of the non finished row
// to carry it over to the next table
@@ -598,6 +599,8 @@ void DomainMapperTableManager::endOfRowAction()
m_aCellWidths.push_back(pTmpCellWidths);
m_nCell.push_back(nTmpCell);
m_aGridBefore.push_back(nTmpGridBefore);
+ m_aParagraphsToEndTable.pop( );
+ m_aParagraphsToEndTable.push( pTableParagraphs );
}
// save table style in the first row for comparison
if ( m_nRow == 0 && pTablePropMap->isSet(META_PROP_TABLE_STYLE_NAME) )