sw/qa/extras/ooxmlexport/data/tdf125778_lostPageBreakTOX.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport13.cxx | 5 +++++ sw/source/filter/ww8/wrtw8nds.cxx | 6 +++--- 3 files changed, 8 insertions(+), 3 deletions(-)
New commits: commit bb6edb9d28058a7bf6ba7faa9b371002e33331d8 Author: Justin Luth <justin.l...@collabora.com> AuthorDate: Mon Nov 4 08:14:41 2019 +0300 Commit: Xisco FaulĂ <xiscofa...@libreoffice.org> CommitDate: Sat Nov 9 15:57:48 2019 +0100 tdf#125778 docxexport: handle pageBreak before TOX The pagebreak before the TOX was lost in docx (but not in .doc or .rtf). Change-Id: I280b0bd19a73db180b65a0937bd0fe809e5dfc6f Reviewed-on: https://gerrit.libreoffice.org/81979 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_l...@sil.org> Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 4ea43e887498f9d78f70b40bcdc53865057a78c0) Reviewed-on: https://gerrit.libreoffice.org/82250 Reviewed-by: Xisco FaulĂ <xiscofa...@libreoffice.org> diff --git a/sw/qa/extras/ooxmlexport/data/tdf125778_lostPageBreakTOX.docx b/sw/qa/extras/ooxmlexport/data/tdf125778_lostPageBreakTOX.docx new file mode 100644 index 000000000000..dd5d323e5778 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf125778_lostPageBreakTOX.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx index 0fc73d0d2879..3800851c3b83 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx @@ -46,6 +46,11 @@ DECLARE_SW_EXPORT_TEST(testFlyInFly, "ooo39250-1-min.rtf", nullptr, Test) CPPUNIT_ASSERT_EQUAL(OUString("Frame2"), uno::Reference<container::XNamed>(xAnchorFrame, uno::UNO_QUERY_THROW)->getName()); } +DECLARE_OOXMLEXPORT_TEST(testTdf125778_lostPageBreakTOX, "tdf125778_lostPageBreakTOX.docx") +{ + CPPUNIT_ASSERT_EQUAL_MESSAGE( "Number of Pages", 3, getPages() ); +} + DECLARE_OOXMLEXPORT_TEST(testTdf126994_lostPageBreak, "tdf126994_lostPageBreak.docx") { CPPUNIT_ASSERT_EQUAL_MESSAGE( "Number of Pages", 3, getPages() ); diff --git a/sw/source/filter/ww8/wrtw8nds.cxx b/sw/source/filter/ww8/wrtw8nds.cxx index dc7e4e18c6e8..947e16457bf5 100644 --- a/sw/source/filter/ww8/wrtw8nds.cxx +++ b/sw/source/filter/ww8/wrtw8nds.cxx @@ -3025,8 +3025,7 @@ void MSWordExportBase::OutputSectionNode( const SwSectionNode& rSectionNode ) SwNodeIndex aIdx( rSectionNode, 1 ); const SwNode& rNd = aIdx.GetNode(); - if ( !rNd.IsSectionNode() && !IsInTable() - && rSection.GetType() != TOX_CONTENT_SECTION && rSection.GetType() != TOX_HEADER_SECTION) //No sections in table + if ( !rNd.IsSectionNode() && !IsInTable() ) //No sections in table { // if the first Node inside the section has an own // PageDesc or PageBreak attribute, then don't write @@ -3046,7 +3045,8 @@ void MSWordExportBase::OutputSectionNode( const SwSectionNode& rSectionNode ) else AttrOutput().SectionBreaks( rSectionNode ); - if ( !pSet ) + const bool bInTOX = rSection.GetType() == TOX_CONTENT_SECTION || rSection.GetType() == TOX_HEADER_SECTION; + if ( !pSet && !bInTOX ) { // new Section with no own PageDesc/-Break // -> write follow section break; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits