sd/source/ui/dlg/dlgass.cxx | 6 ++++++ sd/source/ui/dlg/docprev.cxx | 6 ++++++ 2 files changed, 12 insertions(+)
New commits: commit 0212bf7e832ad8edfdc8d1eee2f222a99eb41429 Author: Caolán McNamara <caol...@redhat.com> Date: Wed May 18 16:08:16 2016 +0100 Resolves: tdf#95620 crash in presentation wizard possibly a regression from VclPtr or maybe from VclBuilder, or a bit of both. Change-Id: I46acf07e219334547429da7b2983d5be9cdb6ef8 (cherry picked from commit 1ea14bb0bbb7ca79c0a60a1041243bbebda31e18) Reviewed-on: https://gerrit.libreoffice.org/25112 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Miklos Vajna <vmik...@collabora.co.uk> diff --git a/sd/source/ui/dlg/dlgass.cxx b/sd/source/ui/dlg/dlgass.cxx index c6687ca..5bb117f 100644 --- a/sd/source/ui/dlg/dlgass.cxx +++ b/sd/source/ui/dlg/dlgass.cxx @@ -656,6 +656,12 @@ AssistentDlgImpl::AssistentDlgImpl( vcl::Window* pWindow, const Link<ListBox&,vo AssistentDlgImpl::~AssistentDlgImpl() { + //tdf#95620 we need to have mpPreview disposed before the DocShell is + //destroyed, and not after. Because if the preview's slideshow is active + //then the slideshow accesses the medium belonging to this DocShell in + //its disposing. + mpPreview.disposeAndClear(); + CloseDocShell(); DeletePasswords(); diff --git a/sd/source/ui/dlg/docprev.cxx b/sd/source/ui/dlg/docprev.cxx index 7e25a5a..cc1f3bb 100644 --- a/sd/source/ui/dlg/docprev.cxx +++ b/sd/source/ui/dlg/docprev.cxx @@ -89,7 +89,13 @@ SdDocPreviewWin::~SdDocPreviewWin() void SdDocPreviewWin::dispose() { + if (mxSlideShow.is()) + { + mxSlideShow->end(); + mxSlideShow.clear(); + } delete pMetaFile; + pMetaFile = nullptr; Control::dispose(); }
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits