sw/source/core/layout/tabfrm.cxx |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

New commits:
commit 8b490c17243248e2824633d0438b0fc290d94f9b
Author: Stephan Bergmann <sberg...@redhat.com>
Date:   Mon Oct 9 12:44:46 2017 +0200

    tdf#112942: Apparently, rTab.GetFollow() can change in between
    
    ...the calls to TableSplitRecalcLock and TableSplitRecalcUnlock
    
    Change-Id: Iacb0d88ccb323fb248129daeeeb207b25f148753

diff --git a/sw/source/core/layout/tabfrm.cxx b/sw/source/core/layout/tabfrm.cxx
index efcc0df63223..ec2e72209252 100644
--- a/sw/source/core/layout/tabfrm.cxx
+++ b/sw/source/core/layout/tabfrm.cxx
@@ -662,7 +662,7 @@ static bool lcl_RecalcSplitLine( SwRowFrame& rLastLine, 
SwRowFrame& rFollowLine,
 
     // Lock this tab frame and its follow
     bool bUnlockMaster = false;
-    bool bUnlockFollow = false;
+    SwFlowFrame * bUnlockFollow = nullptr;
     SwTabFrame* pMaster = rTab.IsFollow() ? rTab.FindMaster() : nullptr;
     if ( pMaster && !pMaster->IsJoinLocked() )
     {
@@ -671,8 +671,8 @@ static bool lcl_RecalcSplitLine( SwRowFrame& rLastLine, 
SwRowFrame& rFollowLine,
     }
     if ( !rTab.GetFollow()->IsJoinLocked() )
     {
-        bUnlockFollow = true;
-        ::TableSplitRecalcLock( rTab.GetFollow() );
+        bUnlockFollow = rTab.GetFollow();
+        ::TableSplitRecalcLock( bUnlockFollow );
     }
 
     bool bInSplit = rLastLine.IsInSplit();
@@ -689,7 +689,7 @@ static bool lcl_RecalcSplitLine( SwRowFrame& rLastLine, 
SwRowFrame& rFollowLine,
 
     // Unlock this tab frame and its follow
     if ( bUnlockFollow )
-        ::TableSplitRecalcUnlock( rTab.GetFollow() );
+        ::TableSplitRecalcUnlock( bUnlockFollow );
     if ( bUnlockMaster )
         ::TableSplitRecalcUnlock( pMaster );
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to