summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2016-09-28 15:35:26 +0200
committerCaolán McNamara <caolanm@redhat.com>2016-09-29 20:36:45 +0000
commitcda5c1f15f73922026992036bdaf631bad19c76f (patch)
treec3fbff49c0559d002e495f7efbd96ecf4d911d17 /sw
parentd47756ab1fce2aedd7658e49fa893c2e2b63286e (diff)
tdf#102073: sw: do not create SwFootnoteNumPortion inside table
The SwTextFormatter::WhichFirstPortion() wants to create a new SwFootnoteNumPortion for the first paragraph in every cell, because it doesn't have mpPrev set and SwTextFrame::IsFootnoteNumFrame() is true, and somehow this even causes an infinite loop in the bugdoc because initially nothing more than the footnote number fits inside a line. Just detect that it's inside a table and return false then. Change-Id: I1f010f1242d53d9f99a4d3a4f6fc3cee65aa3958 (cherry picked from commit ebcbc970f8d0ecbba8c6d7e7c2a1b977d63bc2fb) Reviewed-on: https://gerrit.libreoffice.org/29362 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sw')
-rw-r--r--sw/source/core/text/txtftn.cxx2
1 files changed, 2 insertions, 0 deletions
diff --git a/sw/source/core/text/txtftn.cxx b/sw/source/core/text/txtftn.cxx
index 1eb36ef6ddef..69d4062582a4 100644
--- a/sw/source/core/text/txtftn.cxx
+++ b/sw/source/core/text/txtftn.cxx
@@ -57,6 +57,8 @@ using namespace ::com::sun::star;
bool SwTextFrame::IsFootnoteNumFrame_() const
{
+ if (IsInTab())
+ return false; // tdf#102073 first frame in cell doesn't have mpPrev set
const SwFootnoteFrame* pFootnote = FindFootnoteFrame()->GetMaster();
while( pFootnote && !pFootnote->ContainsContent() )
pFootnote = pFootnote->GetMaster();