diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-10-23 11:38:43 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2015-10-29 13:08:53 +0100 |
commit | 8c55928e2b1e7ab20381a64ef25ce0489cdc9451 (patch) | |
tree | e2f2f95afc263af2dc56d73cadafd27f4a440aa4 /svx | |
parent | f9936a89922bbbc481d3b213375efe8db9d0243c (diff) |
afl-eventtesting: crash on undoing insert new page in impress
this is an intermittent crash in the real world but under event testing we can
see that the PaintView is informed that the page has been deleted, but doesn't
clear its use of the page if it so happens that there was earlier modification
events that caused the fire-modification-timer to be launched
If there happens to be no such events then the page is correctly cleared
If the timer is active, then the page is not cleared, but eventually the
timer will fire and access the deleted page and fall over and die
minimal change for backporting ease, follow ups now
(cherry picked from commit f8b975995c5d0dc6a9fc8febba0667fe24542ad2)
Change-Id: I090ad62cc175545902574c93dec7082225d97ab7
Reviewed-on: https://gerrit.libreoffice.org/19551
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
(cherry picked from commit d6a6261fa99d5ea00f530ba234f9557f33ac9b2b)
Diffstat (limited to 'svx')
-rw-r--r-- | svx/source/svdraw/svdpntv.cxx | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/svx/source/svdraw/svdpntv.cxx b/svx/source/svdraw/svdpntv.cxx index e996c5c07426..74a93bf86c65 100644 --- a/svx/source/svdraw/svdpntv.cxx +++ b/svx/source/svdraw/svdpntv.cxx @@ -259,12 +259,12 @@ void SdrPaintView::Notify(SfxBroadcaster& rBC, const SfxHint& rHint) return; } - bool bObjChg=!bSomeObjChgdFlag; // if true, evaluate for ComeBack timer - if (bObjChg) { + { const SdrHint* pSdrHint = dynamic_cast<const SdrHint*>(&rHint); if (pSdrHint) { SdrHintKind eKind=pSdrHint->GetKind(); if (eKind==HINT_OBJCHG || eKind==HINT_OBJINSERTED || eKind==HINT_OBJREMOVED) { + bool bObjChg=!bSomeObjChgdFlag; // if true, evaluate for ComeBack timer if (bObjChg) { bSomeObjChgdFlag=true; aComeBackIdle.Start(); |