From 1ce2375b17912622e6db4c2c81afa24527a0104b Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Sat, 22 Aug 2015 19:07:12 +0100 Subject: tdf#93188 - avoid crash in media player. ToggleFloatingMode can be run during dispose, and should handle that, thanks to Maxim Monastirsky for the analysis. Change-Id: I72c5aff9b75fa2c1b6795e239370244dafdafae2 --- avmedia/source/framework/mediaplayer.cxx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/avmedia/source/framework/mediaplayer.cxx b/avmedia/source/framework/mediaplayer.cxx index 28adf1959c8e..b9c2b672d387 100644 --- a/avmedia/source/framework/mediaplayer.cxx +++ b/avmedia/source/framework/mediaplayer.cxx @@ -101,12 +101,16 @@ void MediaFloater::ToggleFloatingMode() { ::avmedia::MediaItem aRestoreItem; - mpMediaWindow->updateMediaItem( aRestoreItem ); + if (mpMediaWindow) + mpMediaWindow->updateMediaItem( aRestoreItem ); delete mpMediaWindow; mpMediaWindow = NULL; SfxDockingWindow::ToggleFloatingMode(); + if (isDisposed()) + return; + mpMediaWindow = new MediaWindow( this, true ); mpMediaWindow->setPosSize( Rectangle( Point(), GetOutputSizePixel() ) ); -- cgit v1.2.3