[Libreoffice-commits] core.git: sd/source vcl/qa

Caolán McNamara caolanm at redhat.com
Wed Oct 21 08:49:38 PDT 2015


 sd/source/ui/view/ViewShellBase.cxx                  |    6 ++++++
 vcl/qa/afl-eventtesting/eventtesting.impress.crash-2 |binary
 2 files changed, 6 insertions(+)

New commits:
commit fb5b2c5580a247a2f6935e66dbcb48e16e291e87
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Oct 21 16:47:33 2015 +0100

    afl-eventtesting: crash if you close shell behind running presentation
    
    Change-Id: Ib8f02ddfe3b74e97145e22aa88e6f97d52c39f7a

diff --git a/sd/source/ui/view/ViewShellBase.cxx b/sd/source/ui/view/ViewShellBase.cxx
index 4fa7078..966e777 100644
--- a/sd/source/ui/view/ViewShellBase.cxx
+++ b/sd/source/ui/view/ViewShellBase.cxx
@@ -33,6 +33,7 @@
 #include "app.hrc"
 #include "strings.hrc"
 #include "glob.hrc"
+#include "slideshow.hxx"
 #include "unokywds.hxx"
 #include <svx/svxids.hrc>
 #include "DrawDocShell.hxx"
@@ -263,6 +264,11 @@ ViewShellBase::ViewShellBase (
 */
 ViewShellBase::~ViewShellBase()
 {
+    rtl::Reference<SlideShow> xSlideShow(SlideShow::GetSlideShow(*this));
+    if (xSlideShow.is() && xSlideShow->dependsOn(this))
+        SlideShow::Stop(*this);
+    xSlideShow.clear();
+
     // Tell the controller that the ViewShellBase is not available anymore.
     if (mpImpl->mpController.get() != NULL)
         mpImpl->mpController->ReleaseViewShellBase();
diff --git a/vcl/qa/afl-eventtesting/eventtesting.impress.crash-2 b/vcl/qa/afl-eventtesting/eventtesting.impress.crash-2
new file mode 100644
index 0000000..d312939
Binary files /dev/null and b/vcl/qa/afl-eventtesting/eventtesting.impress.crash-2 differ


More information about the Libreoffice-commits mailing list