summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2015-06-08 23:28:11 +0200
committerMichael Stahl <mstahl@redhat.com>2015-06-08 23:47:00 +0200
commit238e07ddca879e0951bef6391fdc5c3fc26bded5 (patch)
tree117f488ed43c8bca6c5c1f6f4d0e12cefc6b2e5d
parenta9ff587f5ab82b2b8567e5474dd9f5852680c2da (diff)
tdf#91917 tdf#91602: avoid layout recursion differently
(regression from 587006cac508616f486aea45e265a170bcccdc87) Change-Id: I38e00a7469243088e25aa1a91e3581240b3bbdea
-rw-r--r--sw/source/core/crsr/crsrsh.cxx6
1 files changed, 2 insertions, 4 deletions
diff --git a/sw/source/core/crsr/crsrsh.cxx b/sw/source/core/crsr/crsrsh.cxx
index 0b8aba3ca019..e6b66805b397 100644
--- a/sw/source/core/crsr/crsrsh.cxx
+++ b/sw/source/core/crsr/crsrsh.cxx
@@ -284,10 +284,6 @@ void SwCrsrShell::EndAction( const bool bIdleEnd, const bool DoSetPosX )
}
return;
}
- else
- {
- eFlags |= SwCrsrShell::NOCALRECT; // tdf#91602 prevent recursive Action!
- }
if ( !bIdleEnd )
eFlags |= SwCrsrShell::SCROLLWIN;
@@ -1744,12 +1740,14 @@ void SwCrsrShell::UpdateCrsr( sal_uInt16 eFlags, bool bIdleEnd )
aTmpState.pSpecialPos = &aSpecialPos;
}
+ ++mnStartAction; // tdf#91602 prevent recursive Action!
if( !pFrm->GetCharRect( m_aCharRect, *pShellCrsr->GetPoint(), &aTmpState ) )
{
Point& rPt = pShellCrsr->GetPtPos();
rPt = m_aCharRect.Center();
pFrm->GetCrsrOfst( pShellCrsr->GetPoint(), rPt, &aTmpState );
}
+ --mnStartAction;
if( !pShellCrsr->HasMark() )
m_aCrsrHeight = aTmpState.aRealHeight;