summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2014-08-01 10:47:49 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-08-01 16:16:45 +0000
commit22688ede28db14e5947cf73e85fcd2156e26ec5e (patch)
tree1b62c7a1bdb3c212bad24f8991dfb18f72b1ab5c
parent9294fd3f8630391f3b85031a345a53d066934a42 (diff)
fdo#81893: writerfilter: RTF import: \qc before \page was lost
The paragraph properties need to be applied to the paragraph following the \page too, which did not happen in this case. Also the minimized test doc shows that checkNeedPap() must be preceded by checkFirstRun(), since there is no run preceding the \page. (regression from 94765a1b3f543b3b60f8c1de05048d12f2576be4) Change-Id: Id286c4fbdeee688fa4f6b24063b634bac637eab6 (cherry picked from commit 008d1187a9f3b36d6cbf31742632d237afecf1bd) Reviewed-on: https://gerrit.libreoffice.org/10675 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
-rw-r--r--sw/qa/extras/rtfimport/rtfimport.cxx4
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx4
2 files changed, 8 insertions, 0 deletions
diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx
index f36b53032503..ca603212fb31 100644
--- a/sw/qa/extras/rtfimport/rtfimport.cxx
+++ b/sw/qa/extras/rtfimport/rtfimport.cxx
@@ -344,6 +344,10 @@ DECLARE_RTFIMPORT_TEST(testFdo81892, "fdo81892.rtf")
uno::Reference<container::XIndexAccess> xTables(xTextTablesSupplier->getTextTables(), uno::UNO_QUERY);
uno::Reference<text::XTextTable> xTable(xTables->getByIndex(0), uno::UNO_QUERY);
CPPUNIT_ASSERT_EQUAL(text::HoriOrientation::CENTER, getProperty<sal_Int16>(xTable, "HoriOrient"));
+
+ // fdo#81893: paragraph with \page was not centered
+ uno::Reference<text::XTextRange> xPara(getParagraph(2, "Performance"));
+ CPPUNIT_ASSERT_EQUAL(style::ParagraphAdjust_CENTER, static_cast<style::ParagraphAdjust>(getProperty<sal_Int16>(xPara, "ParaAdjust")));
}
DECLARE_RTFIMPORT_TEST(testFdo45394, "fdo45394.rtf")
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 01a857479bdc..2372a2920eb3 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -2301,11 +2301,15 @@ int RTFDocumentImpl::dispatchSymbol(RTFKeyword nKeyword)
}
else
{
+ checkFirstRun();
checkNeedPap();
sal_uInt8 sBreak[] = { 0xc };
Mapper().text(sBreak, 1);
if (!m_bNeedPap)
+ {
parBreak();
+ m_bNeedPap = true;
+ }
m_bNeedCr = true;
}
}