summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@suse.cz>2012-12-23 14:37:59 +0100
committerMiklos Vajna <vmiklos@suse.cz>2012-12-23 16:39:31 +0100
commit99894610482eb8f631083c327ca2f0310391eb23 (patch)
treefb4762f5d2876a45e25bdcfb9732dc4e922c80b9 /sw
parent1b8de5ffb509d37110b59f412e72e0c0ddde7138 (diff)
fdo#58076 fix import of RTF page margins vs partial section props
The problem was that \sbknone (being a section property) triggered creating a section, but the document doesn't have multiple sections. Make sure we don't send section properties as long as no \sect control words present. (cherry picked from commit 07c80d23fadcc2334fe7c6f9ce7b5dafeb88d623)
Diffstat (limited to 'sw')
-rw-r--r--sw/qa/extras/rtfimport/data/fdo58076.rtf5
-rw-r--r--sw/qa/extras/rtfimport/rtfimport.cxx12
2 files changed, 17 insertions, 0 deletions
diff --git a/sw/qa/extras/rtfimport/data/fdo58076.rtf b/sw/qa/extras/rtfimport/data/fdo58076.rtf
new file mode 100644
index 000000000000..2acbfd8ec7d0
--- /dev/null
+++ b/sw/qa/extras/rtfimport/data/fdo58076.rtf
@@ -0,0 +1,5 @@
+{\rtf1
+\paperw11908\paperh16838\margl1276\margr993\margt360\margb360
+\sectd \sbknone\headery708\footery708
+\par
+}
diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx
index a2fdf223bdd9..da5794f41751 100644
--- a/sw/qa/extras/rtfimport/rtfimport.cxx
+++ b/sw/qa/extras/rtfimport/rtfimport.cxx
@@ -130,6 +130,7 @@ public:
void testFdo54473();
void testFdo49934();
void testFdo57886();
+ void testFdo58076();
CPPUNIT_TEST_SUITE(Test);
#if !defined(MACOSX) && !defined(WNT)
@@ -210,6 +211,7 @@ void Test::run()
{"fdo54473.rtf", &Test::testFdo54473},
{"fdo49934.rtf", &Test::testFdo49934},
{"fdo57886.rtf", &Test::testFdo57886},
+ {"fdo58076.rtf", &Test::testFdo58076},
};
for (unsigned int i = 0; i < SAL_N_ELEMENTS(aMethods); ++i)
{
@@ -966,6 +968,16 @@ void Test::testFdo57886()
CPPUNIT_ASSERT_EQUAL(OUString("int from {firstlower} to {firstupper} {firstbody}"), getFormula(getRun(getParagraph(1), 1)));
}
+void Test::testFdo58076()
+{
+ // An additional section was created, so the default page style didn't have the custom margins.
+ uno::Reference<beans::XPropertySet> xStyle(getStyles("PageStyles")->getByName(DEFAULT_STYLE), uno::UNO_QUERY);
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(2251), getProperty<sal_Int32>(xStyle, "LeftMargin"));
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(1752), getProperty<sal_Int32>(xStyle, "RightMargin"));
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(635), getProperty<sal_Int32>(xStyle, "TopMargin"));
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(635), getProperty<sal_Int32>(xStyle, "BottomMargin"));
+}
+
CPPUNIT_TEST_SUITE_REGISTRATION(Test);
CPPUNIT_PLUGIN_IMPLEMENT();