[Libreoffice-commits] core.git: sw/source
Bjoern Michaelsen
bjoern.michaelsen at libreoffice.org
Tue Sep 19 23:05:06 UTC 2017
sw/source/core/layout/frmtool.cxx | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
New commits:
commit e73961022d8efda407c3f5ed806f78bb7cc0e0b4
Author: Bjoern Michaelsen <bjoern.michaelsen at libreoffice.org>
Date: Tue Sep 19 07:46:50 2017 +0200
no need to queue formats in header and footer ...
- we can call MakeFrames on them right away
- as there had been performance issues on mail merge here before, this
might a bit quicker for suoer large documents.
Change-Id: Idd84d7e6a962d00d59e2981f63ed9db60377fa01
Reviewed-on: https://gerrit.libreoffice.org/42442
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen at libreoffice.org>
diff --git a/sw/source/core/layout/frmtool.cxx b/sw/source/core/layout/frmtool.cxx
index 5a238580ac42..e45e558f20ee 100644
--- a/sw/source/core/layout/frmtool.cxx
+++ b/sw/source/core/layout/frmtool.cxx
@@ -1100,14 +1100,18 @@ void AppendAllObjs(const SwFrameFormats* pTable, const SwFrame* pSib)
// Formats can still remain, because we neither use character bound
// frames nor objects which are anchored to character bounds.
if ((rAnch.GetAnchorId() != RndStdIds::FLY_AT_PAGE) && (rAnch.GetAnchorId() != RndStdIds::FLY_AS_CHAR))
- vFormatsToConnect.push_back(pFormat);
+ {
+ if(lcl_InHeaderOrFooter(*pFormat))
+ pFormat->MakeFrames();
+ else
+ vFormatsToConnect.push_back(pFormat);
+ }
}
const SwFrameFormat* pFirstRequeued(nullptr);
while(!vFormatsToConnect.empty())
{
auto& pFormat = vFormatsToConnect.front();
- const bool bAlreadyConnected(lcl_ObjConnected(pFormat, pSib));
- if(!bAlreadyConnected || lcl_InHeaderOrFooter(*pFormat))
+ if(!lcl_ObjConnected(pFormat, pSib))
{
pFormat->MakeFrames();
pFirstRequeued = nullptr;
More information about the Libreoffice-commits
mailing list