diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-09-11 12:23:18 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-09-11 16:00:19 +0200 |
commit | ded74247a1200b3577ba3854e92f33de190d52a9 (patch) | |
tree | 9d475b4a4f19fecc74bc0bb217b76a9882e9a889 /writerfilter | |
parent | 79bd799f0571a7213faa9b81709d0b4084a21c57 (diff) |
Resolves: fdo#82114 RTF import: fix handling of first page in non-first section
Change-Id: If06c6bcdda97447e6014223d997c7ff8abd64b48
(cherry picked from commit 04fe5e6a31c9701177a744bbc8a53b2f664fe71c)
Conflicts:
sw/qa/extras/rtfimport/rtfimport.cxx
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/dmapper/PropertyMap.cxx | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/writerfilter/source/dmapper/PropertyMap.cxx b/writerfilter/source/dmapper/PropertyMap.cxx index 4434bdc75aaf..cde69b1ed36d 100644 --- a/writerfilter/source/dmapper/PropertyMap.cxx +++ b/writerfilter/source/dmapper/PropertyMap.cxx @@ -396,14 +396,18 @@ uno::Reference< beans::XPropertySet > SectionPropertyMap::GetPageStyle( m_aFirstPageStyle = uno::Reference< beans::XPropertySet > ( xTextFactory->createInstance("com.sun.star.style.PageStyle"), uno::UNO_QUERY); + + // Call insertByName() before GetPageStyle(), otherwise the + // first and the follow page style will have the same name, and + // insertByName() will fail. + if (xPageStyles.is()) + xPageStyles->insertByName( m_sFirstPageStyleName, uno::makeAny(m_aFirstPageStyle) ); + // Ensure that m_aFollowPageStyle has been created GetPageStyle( xPageStyles, xTextFactory, false ); // Chain m_aFollowPageStyle to be after m_aFirstPageStyle m_aFirstPageStyle->setPropertyValue("FollowStyle", uno::makeAny(m_sFollowPageStyleName)); - - if (xPageStyles.is()) - xPageStyles->insertByName( m_sFirstPageStyleName, uno::makeAny(m_aFirstPageStyle) ); } else if( !m_aFirstPageStyle.is() && xPageStyles.is() ) { @@ -430,8 +434,9 @@ uno::Reference< beans::XPropertySet > SectionPropertyMap::GetPageStyle( } } - catch( const uno::Exception& ) + catch( const uno::Exception& rException ) { + SAL_WARN("writerfilter", "SectionPropertyMap::GetPageStyle() failed: " << rException.Message); } return xRet; |