sc/qa/unit/subsequent_export-test.cxx | 24 ++++++++++++++++++++++++ sc/source/filter/xml/xmlexprt.cxx | 6 ++++++ 2 files changed, 30 insertions(+)
New commits: commit 7cf444454c0c27e2f6d764164ea880b87163f45a Author: Markus Mohrhard <markus.mohrh...@googlemail.com> Date: Tue Sep 27 18:36:52 2016 +0200 add test for tdf#101843 Change-Id: I90bd5e8042e3157286774c97d2ea3c109da2b658 diff --git a/sc/qa/unit/subsequent_export-test.cxx b/sc/qa/unit/subsequent_export-test.cxx index ac1f035..0b78c56 100644 --- a/sc/qa/unit/subsequent_export-test.cxx +++ b/sc/qa/unit/subsequent_export-test.cxx @@ -174,6 +174,8 @@ public: void testEscapeCharInNumberFormatXLSX(); void testNatNumInNumberFormatXLSX(); + void testHiddenRepeatedRowsODS(); + CPPUNIT_TEST_SUITE(ScExportTest); CPPUNIT_TEST(test); CPPUNIT_TEST(testPasswordExport); @@ -255,6 +257,8 @@ public: CPPUNIT_TEST(testEscapeCharInNumberFormatXLSX); CPPUNIT_TEST(testNatNumInNumberFormatXLSX); + CPPUNIT_TEST(testHiddenRepeatedRowsODS); + CPPUNIT_TEST_SUITE_END(); private: @@ -3655,6 +3659,26 @@ void ScExportTest::testNatNumInNumberFormatXLSX() xDocSh->DoClose(); } +void ScExportTest::testHiddenRepeatedRowsODS() +{ + ScDocShellRef xDocSh = loadDoc("empty.", FORMAT_ODS); + CPPUNIT_ASSERT( xDocSh.Is() ); + + { + ScDocument& rDoc = xDocSh->GetDocument(); + rDoc.SetRowHidden(0, 20, 0, true); + } + + xDocSh = saveAndReload( &(*xDocSh), FORMAT_ODS); // Convert [NatNum5] to [DBNum2] in Chinese + ScDocument& rDoc = xDocSh->GetDocument(); + SCROW nFirstRow = 0; + SCROW nLastRow = 0; + bool bHidden = rDoc.RowHidden(0, 0, &nFirstRow, &nLastRow); + CPPUNIT_ASSERT(bHidden); + CPPUNIT_ASSERT_EQUAL((SCROW)0, nFirstRow); + CPPUNIT_ASSERT_EQUAL((SCROW)20, nLastRow); +} + CPPUNIT_TEST_SUITE_REGISTRATION(ScExportTest); CPPUNIT_PLUGIN_IMPLEMENT(); commit 7e7f6b0a056b51a425934f63745ae5c9fed2e51f Author: Markus Mohrhard <markus.mohrh...@googlemail.com> Date: Tue Sep 27 18:17:11 2016 +0200 tdf#101843, ensure repeated rows set the hidden/filtered flag correctly Change-Id: I759107eeb074698d5e4987c76005788aee33287d diff --git a/sc/source/filter/xml/xmlexprt.cxx b/sc/source/filter/xml/xmlexprt.cxx index 8a0931c..4853373 100644 --- a/sc/source/filter/xml/xmlexprt.cxx +++ b/sc/source/filter/xml/xmlexprt.cxx @@ -1439,9 +1439,15 @@ void ScXMLExport::OpenRow(const sal_Int32 nTable, const sal_Int32 nStartRow, con if (pDoc) { if (nRow > nEndRowHidden) + { bPrevHidden = rRowAttr.rowHidden(nTable, nRow, nEndRowHidden); + bHidden = bPrevHidden; + } if (nRow > nEndRowFiltered) + { bPrevFiltered = rRowAttr.rowFiltered(nTable, nRow, nEndRowFiltered); + bFiltered = bPrevFiltered; + } } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits