diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-10-01 21:09:48 +0100 |
---|---|---|
committer | jan iversen <jani@documentfoundation.org> | 2016-10-04 15:35:09 +0000 |
commit | 0570ddd7377c825e6cff7e71d07452223d230b6b (patch) | |
tree | 473cbe4c622f3458dcb4922419c7c6560769143d | |
parent | 0d60b0dc1208b01b659fd1af4b33d1a7f6ee737d (diff) |
Engine() return mpOutliner, so can crash if Engine() used post delete
if Deactivate called during ::dispose
(cherry picked from commit 86617760eb8bc6c0b2713b9496ade9203d1077a5)
Change-Id: I066dcc52278f12442de0281c8d783353aed5a186
Reviewed-on: https://gerrit.libreoffice.org/29444
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: jan iversen <jani@documentfoundation.org>
Tested-by: Jenkins <ci@libreoffice.org>
-rw-r--r-- | sd/source/ui/annotations/annotationwindow.cxx | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sd/source/ui/annotations/annotationwindow.cxx b/sd/source/ui/annotations/annotationwindow.cxx index dcbeb2262a75..1b2fd3808872 100644 --- a/sd/source/ui/annotations/annotationwindow.cxx +++ b/sd/source/ui/annotations/annotationwindow.cxx @@ -298,6 +298,7 @@ void AnnotationWindow::dispose() mpMeta.disposeAndClear(); delete mpOutlinerView; delete mpOutliner; + mpOutliner = nullptr; mpVScrollbar.disposeAndClear(); mpTextWindow.disposeAndClear(); FloatingWindow::dispose(); @@ -613,6 +614,9 @@ void AnnotationWindow::SetColor() void AnnotationWindow::Deactivate() { + if (!mpOutliner) //in dispose + return; + Reference< XAnnotation > xAnnotation( mxAnnotation ); // write changed text back to annotation |