sc/qa/unit/data/xlsx/tdf134817_HeaderFooterTextWith2Section.xlsx |binary sc/qa/unit/subsequent_export-test.cxx | 20 ++++++++++ sc/source/filter/excel/xehelper.cxx | 2 - 3 files changed, 21 insertions(+), 1 deletion(-)
New commits: commit ceb2282e392dbe90379a893b2282d9d5beae89ed Author: Attila Szűcs <szucs.atti...@nisz.hu> AuthorDate: Fri Jul 17 09:21:45 2020 +0200 Commit: Xisco Fauli <xiscofa...@libreoffice.org> CommitDate: Tue Aug 4 12:16:42 2020 +0200 tdf#134817 XLSX export: fix partially lost header/footer When header/footer text contain text portions with different font setting, only the last text portion was exported. Co-authored-by: Tibor Nagy (NISZ) Change-Id: Id4cba2b9188459cdaa0ade30c2217d8f59fe6316 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98938 Tested-by: László Németh <nem...@numbertext.org> Reviewed-by: László Németh <nem...@numbertext.org> Signed-off-by: Xisco Fauli <xiscofa...@libreoffice.org> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99788 Tested-by: Jenkins Reviewed-by: Attila Szűcs <szucs.atti...@nisz.hu> diff --git a/sc/qa/unit/data/xlsx/tdf134817_HeaderFooterTextWith2Section.xlsx b/sc/qa/unit/data/xlsx/tdf134817_HeaderFooterTextWith2Section.xlsx new file mode 100644 index 000000000000..224ac8d18429 Binary files /dev/null and b/sc/qa/unit/data/xlsx/tdf134817_HeaderFooterTextWith2Section.xlsx differ diff --git a/sc/qa/unit/subsequent_export-test.cxx b/sc/qa/unit/subsequent_export-test.cxx index 096c95e0f575..d74d4d63d0ec 100644 --- a/sc/qa/unit/subsequent_export-test.cxx +++ b/sc/qa/unit/subsequent_export-test.cxx @@ -249,6 +249,7 @@ public: void testTdf131372(); void testTdf122331(); void testTdf83779(); + void testTdf134817_HeaderFooterTextWith2SectionXLSX(); CPPUNIT_TEST_SUITE(ScExportTest); CPPUNIT_TEST(test); @@ -396,6 +397,7 @@ public: CPPUNIT_TEST(testTdf131372); CPPUNIT_TEST(testTdf122331); CPPUNIT_TEST(testTdf83779); + CPPUNIT_TEST(testTdf134817_HeaderFooterTextWith2SectionXLSX); CPPUNIT_TEST_SUITE_END(); @@ -5081,6 +5083,24 @@ void ScExportTest::testTdf83779() xShell->DoClose(); } +void ScExportTest::testTdf134817_HeaderFooterTextWith2SectionXLSX() +{ + // Header/footer text with multiple selection should be exported, and imported properly + ScDocShellRef xShell = loadDoc("tdf134817_HeaderFooterTextWith2Section.", FORMAT_XLSX); + CPPUNIT_ASSERT(xShell.is()); + + ScDocShellRef xDocSh = saveAndReload(&(*xShell), FORMAT_XLSX); + CPPUNIT_ASSERT(xDocSh.is()); + + xmlDocUniquePtr pDoc = XPathHelper::parseExport2(*this, *xDocSh, m_xSFactory, "xl/worksheets/sheet1.xml", FORMAT_XLSX); + CPPUNIT_ASSERT(pDoc); + + assertXPathContent(pDoc, "/x:worksheet/x:headerFooter/x:oddHeader", "&L&\"Abadi,Regular\"&11aaa&\"Bembo,Regular\"&20bbb"); + assertXPathContent(pDoc, "/x:worksheet/x:headerFooter/x:oddFooter", "&R&\"Cambria,Regular\"&14camb&\"Dante,Regular\"&18dant"); + + xDocSh->DoClose(); +} + CPPUNIT_TEST_SUITE_REGISTRATION(ScExportTest); CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/sc/source/filter/excel/xehelper.cxx b/sc/source/filter/excel/xehelper.cxx index 6584c314aae5..88dcabe1b58f 100644 --- a/sc/source/filter/excel/xehelper.cxx +++ b/sc/source/filter/excel/xehelper.cxx @@ -739,7 +739,7 @@ void XclExpHFConverter::AppendPortion( const EditTextObject* pTextObj, sal_Unico (aFontData.mbItalic != aNewData.mbItalic); if( bNewFont || (bNewStyle && pFontList) ) { - aParaText = "&\"" + aNewData.maName; + aParaText.append("&\"").append(aNewData.maName); if( pFontList ) { FontMetric aFontMetric( pFontList->Get( _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits