related tdf#136472 writerfilter: only copy even pages if used
Allowing the use of Even pages is a document-level setting.
So if the document does not allow the use of an even page,
although we will read it in once (in order to preserve the contents)
there is no point in copying it to every inheriting page style
(especially if it contains large items like images).
Change-Id: I22ccb16e29c5335e50010f8a334494aaa1d45785
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124437
Tested-by: Justin Luth <justin_luth@sil.org>
Reviewed-by: Justin Luth <justin_luth@sil.org>
diff --git a/writerfilter/source/dmapper/PropertyMap.cxx b/writerfilter/source/dmapper/PropertyMap.cxx
index 393d498..dc833c3 100644
--- a/writerfilter/source/dmapper/PropertyMap.cxx
+++ b/writerfilter/source/dmapper/PropertyMap.cxx
@@ -957,6 +957,7 @@ void SectionPropertyMap::CopyLastHeaderFooter( bool bFirstPage, DomainMapper_Imp
SectionPropertyMap* pLastContext = rDM_Impl.GetLastSectionContext();
if ( pLastContext )
{
const bool bUseEvenPages = rDM_Impl.GetSettingsTable()->GetEvenAndOddHeaders();
uno::Reference< beans::XPropertySet > xPrevStyle = pLastContext->GetPageStyle( rDM_Impl,
bFirstPage );
uno::Reference< beans::XPropertySet > xStyle = GetPageStyle( rDM_Impl,
@@ -971,10 +972,10 @@ void SectionPropertyMap::CopyLastHeaderFooter( bool bFirstPage, DomainMapper_Imp
else
{
CopyHeaderFooter( xPrevStyle, xStyle,
!m_bDefaultHeaderLinkToPrevious,
!m_bEvenPageHeaderLinkToPrevious,
!m_bDefaultFooterLinkToPrevious,
!m_bEvenPageFooterLinkToPrevious );
!m_bDefaultHeaderLinkToPrevious,
!(m_bEvenPageHeaderLinkToPrevious && bUseEvenPages),
!m_bDefaultFooterLinkToPrevious,
!(m_bEvenPageFooterLinkToPrevious && bUseEvenPages));
}
}
SAL_INFO( "writerfilter", "END>>> SectionPropertyMap::CopyLastHeaderFooter()" );