summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2014-09-07 09:22:52 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-09-07 09:50:12 +0200
commit76c0d0abc89cd8948706083c2660b71a2dad670c (patch)
tree809f5698168f9ab03686cc3322d02df02454a9cb /writerfilter
parented75aa271956824c89b7c9df2c06e4ad09a74734 (diff)
RTF import: adapt getProperties() to createStyleProperties()
Change-Id: I8561aa1532a863bf7f8dd44fbd40e8e0187e4967
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx12
1 files changed, 11 insertions, 1 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index a4bd1ddeca16..4cad765d549f 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -458,7 +458,17 @@ writerfilter::Reference<Properties>::Pointer_t RTFDocumentImpl::getProperties(RT
RTFReferenceProperties& rCharProps = *(RTFReferenceProperties*)itChar->second.get();
RTFSprms& rCharStyleSprms = rCharProps.getSprms();
for (RTFSprms::Iterator_t itSprm = rCharStyleSprms.begin(); itSprm != rCharStyleSprms.end(); ++itSprm)
- aStyleSprms.set(itSprm->first, itSprm->second);
+ {
+ // createStyleProperties() puts properties to rPr, but here we need a flat list.
+ if (itSprm->first == NS_ooxml::LN_CT_Style_rPr)
+ {
+ RTFSprms& rRPrSprms = itSprm->second->getSprms();
+ for (RTFSprms::Iterator_t itRPrSprm = rRPrSprms.begin(); itRPrSprm != rRPrSprms.end(); ++itRPrSprm)
+ aStyleSprms.set(itRPrSprm->first, itRPrSprm->second);
+ }
+ else
+ aStyleSprms.set(itSprm->first, itSprm->second);
+ }
RTFSprms& rCharStyleAttributes = rCharProps.getAttributes();
for (RTFSprms::Iterator_t itAttr = rCharStyleAttributes.begin(); itAttr != rCharStyleAttributes.end(); ++itAttr)