[Libreoffice-commits] core.git: Branch 'libreoffice-5-2' - sw/source

Michael Stahl mstahl at redhat.com
Thu Sep 29 20:39:26 UTC 2016


 sw/source/core/text/txtftn.cxx |    2 ++
 1 file changed, 2 insertions(+)

New commits:
commit cda5c1f15f73922026992036bdaf631bad19c76f
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Sep 28 15:35:26 2016 +0200

    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 at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sw/source/core/text/txtftn.cxx b/sw/source/core/text/txtftn.cxx
index 1eb36ef..69d4062 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();


More information about the Libreoffice-commits mailing list