diff options
author | Caolán McNamara <caolanm@redhat.com> | 2014-02-28 16:55:03 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-02-28 10:58:59 -0600 |
commit | 1ec2880679d88c89901ce00fe30dd78e584f6960 (patch) | |
tree | 3a1583279cd9590135cb2d7e1cb200132398462b /vcl/source | |
parent | a7a47272b962543dc5bbd3c2f42e889c4f58ef96 (diff) |
Resolves: rhbz#1007697 Update on a Window triggering delete on window
Change-Id: Ic6374ce45e3a3ba97217ae77e91f9143f46e277b
Reviewed-on: https://gerrit.libreoffice.org/8396
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl/source')
-rw-r--r-- | vcl/source/window/window.cxx | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index 277531b189c7..722da94d5b37 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -7483,6 +7483,8 @@ void Window::Update() // if there is something to paint, trigger a Paint if ( pUpdateWindow->mpWindowImpl->mnPaintFlags & (IMPL_PAINT_PAINT | IMPL_PAINT_PAINTCHILDREN) ) { + ImplDelData aDogTag(this); + // trigger an update also for system windows on top of us, // otherwise holes would remain Window* pUpdateOverlapWindow = ImplGetFirstOverlapWindow()->mpWindowImpl->mpFirstOverlap; @@ -7493,6 +7495,9 @@ void Window::Update() } pUpdateWindow->ImplCallPaint( NULL, pUpdateWindow->mpWindowImpl->mnPaintFlags ); + + if (aDogTag.IsDead()) + return; bFlush = true; } |