diff options
author | Michael Stahl <mstahl@redhat.com> | 2016-09-28 15:35:26 +0200 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-09-29 20:36:45 +0000 |
commit | cda5c1f15f73922026992036bdaf631bad19c76f (patch) | |
tree | c3fbff49c0559d002e495f7efbd96ecf4d911d17 /sw | |
parent | d47756ab1fce2aedd7658e49fa893c2e2b63286e (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.cxx | 2 |
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(); |