[PATCH libreoffice-4-0] fdo#42144 WW8 export: avoid writing pointless empty footers

Miklos Vajna (via Code Review) gerrit at gerrit.libreoffice.org
Mon May 6 04:21:47 PDT 2013


Hi,

I have submitted a patch for review:

    https://gerrit.libreoffice.org/3797

To pull it, you can do:

    git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/97/3797/1

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.

(cherry picked from commit 4144cd5a851466778004af9de98dbcfb019067bb)

Conflicts:
	sw/qa/extras/ww8export/ww8export.cxx

Change-Id: Ied55dc2a9f0faef87689c07935a47db384d37e1a
---
A sw/qa/extras/ww8export/data/fdo42144.odt
M sw/qa/extras/ww8export/ww8export.cxx
M sw/source/filter/ww8/wrtw8sty.cxx
3 files changed, 10 insertions(+), 1 deletion(-)



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
--- /dev/null
+++ b/sw/qa/extras/ww8export/data/fdo42144.odt
Binary files differ
diff --git a/sw/qa/extras/ww8export/ww8export.cxx b/sw/qa/extras/ww8export/ww8export.cxx
index 679f765..6ed1ccd 100644
--- a/sw/qa/extras/ww8export/ww8export.cxx
+++ b/sw/qa/extras/ww8export/ww8export.cxx
@@ -42,6 +42,7 @@
     void testFdo45724();
     void testFdo46020();
     void testFirstHeaderFooter();
+    void testFdo42144();
 
     CPPUNIT_TEST_SUITE(Test);
 #if !defined(MACOSX) && !defined(WNT)
@@ -60,6 +61,7 @@
         {"fdo45724.odt", &Test::testFdo45724},
         {"fdo46020.odt", &Test::testFdo46020},
         {"first-header-footer.doc", &Test::testFirstHeaderFooter},
+        {"fdo42144.odt", &Test::testFdo42144},
     };
     for (unsigned int i = 0; i < SAL_N_ELEMENTS(aMethods); ++i)
     {
@@ -139,6 +141,13 @@
     CPPUNIT_ASSERT_EQUAL(OUString("Even page footer 2"),  parseDump("/root/page[6]/footer/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 f002c1f..d837181 100644
--- a/sw/source/filter/ww8/wrtw8sty.cxx
+++ b/sw/source/filter/ww8/wrtw8sty.cxx
@@ -1182,7 +1182,7 @@
     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

-- 
To view, visit https://gerrit.libreoffice.org/3797
To unsubscribe, visit https://gerrit.libreoffice.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ied55dc2a9f0faef87689c07935a47db384d37e1a
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: libreoffice-4-0
Gerrit-Owner: Miklos Vajna <vmiklos at suse.cz>



More information about the LibreOffice mailing list