diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-10-01 21:09:48 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-10-01 21:12:41 +0100 |
commit | 86617760eb8bc6c0b2713b9496ade9203d1077a5 (patch) | |
tree | 6395777898257d0e7847c1c6ed4574fbf79733a3 /sd/source/ui/annotations | |
parent | c0bcdde2a048b6e5465a14182947c09fcd170d45 (diff) |
Engine() return mpOutliner, so can crash if Engine() used post delete
if Deactivate called during ::dispose
Change-Id: I066dcc52278f12442de0281c8d783353aed5a186
Diffstat (limited to 'sd/source/ui/annotations')
-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 0d29d3d820ac..8e2c8657963a 100644 --- a/sd/source/ui/annotations/annotationwindow.cxx +++ b/sd/source/ui/annotations/annotationwindow.cxx @@ -287,6 +287,7 @@ void AnnotationWindow::dispose() mpMeta.disposeAndClear(); delete mpOutlinerView; delete mpOutliner; + mpOutliner = nullptr; mpVScrollbar.disposeAndClear(); mpTextWindow.disposeAndClear(); FloatingWindow::dispose(); @@ -599,6 +600,9 @@ void AnnotationWindow::Deactivate() if (mrManager.getPopupMenuActive()) return; + if (!mpOutliner) //in dispose + return; + Reference< XAnnotation > xAnnotation( mxAnnotation ); // write changed text back to annotation |