[Libreoffice-commits] core.git: sw/qa sw/source

Miklos Vajna vmiklos at suse.cz
Mon May 6 04:02:55 PDT 2013


 sw/qa/extras/ww8export/data/fdo42144.odt |binary
 sw/qa/extras/ww8export/ww8export.cxx     |    9 +++++++++
 sw/source/filter/ww8/wrtw8sty.cxx        |    2 +-
 3 files changed, 10 insertions(+), 1 deletion(-)

New commits:
commit 4144cd5a851466778004af9de98dbcfb019067bb
Author: Miklos Vajna <vmiklos at suse.cz>
Date:   Mon May 6 13:01:27 2013 +0200

    fdo#42144 WW8 export: avoid writing pointless empty footers
    
    Regression from 1348288905ffa75d3634eee4392ba4660d28cdb9 (mismerge, I
    guess), when header was enabled, actually empty footer was exported,
    even in case footer was disabled.
    
    Change-Id: Ied55dc2a9f0faef87689c07935a47db384d37e1a

diff --git a/sw/qa/extras/ww8export/data/fdo42144.odt b/sw/qa/extras/ww8export/data/fdo42144.odt
new file mode 100644
index 0000000..be94900
Binary files /dev/null and b/sw/qa/extras/ww8export/data/fdo42144.odt differ
diff --git a/sw/qa/extras/ww8export/ww8export.cxx b/sw/qa/extras/ww8export/ww8export.cxx
index 65fcfe2..0c2f769 100644
--- a/sw/qa/extras/ww8export/ww8export.cxx
+++ b/sw/qa/extras/ww8export/ww8export.cxx
@@ -25,6 +25,7 @@ public:
     void testZoom();
     void test56513();
     void testNewPageStylesTable();
+    void testFdo42144();
 
     CPPUNIT_TEST_SUITE(Test);
 #if !defined(MACOSX) && !defined(WNT)
@@ -46,6 +47,7 @@ void Test::run()
         {"zoom.doc", &Test::testZoom},
         {"fdo56513.doc", &Test::test56513},
         {"new-page-styles.doc", &Test::testNewPageStylesTable},
+        {"fdo42144.odt", &Test::testFdo42144},
     };
     header();
     for (unsigned int i = 0; i < SAL_N_ELEMENTS(aMethods); ++i)
@@ -140,6 +142,13 @@ void Test::testNewPageStylesTable()
     CPPUNIT_ASSERT_EQUAL(OUString("Sigma Space Performance Goals: Next Year (Page 3)*******"),  parseDump("/root/page[3]/header/txt/text()"));
 }
 
+void Test::testFdo42144()
+{
+    // Footer wasn't disabled -- instead empty footer was exported.
+    uno::Reference<beans::XPropertySet> xStyle(getStyles("PageStyles")->getByName(DEFAULT_STYLE), uno::UNO_QUERY);
+    CPPUNIT_ASSERT_EQUAL(false, bool(getProperty<sal_Bool>(xStyle, "FooterIsOn")));
+}
+
 CPPUNIT_TEST_SUITE_REGISTRATION(Test);
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sw/source/filter/ww8/wrtw8sty.cxx b/sw/source/filter/ww8/wrtw8sty.cxx
index 17fb01c..8397093 100644
--- a/sw/source/filter/ww8/wrtw8sty.cxx
+++ b/sw/source/filter/ww8/wrtw8sty.cxx
@@ -1183,7 +1183,7 @@ void WW8_WrPlcSepx::OutHeaderFooter( WW8Export& rWrt, bool bHeader,
     else if ( rWrt.bWrtWW8 )
     {
         pTxtPos->Append( rCpPos );
-        if (rWrt.bHasHdr && nBreakCode!=0)
+        if ((bHeader? rWrt.bHasHdr : rWrt.bHasFtr) && nBreakCode!=0)
         {
             rWrt.WriteStringAsPara( aEmptyStr ); // Empty paragraph for empty header/footer
             rWrt.WriteStringAsPara( aEmptyStr ); // a CR that WW8 needs for end of the stream


More information about the Libreoffice-commits mailing list