diff options
author | Zolnai Tamás <tamas.zolnai@collabora.com> | 2014-05-25 15:38:03 +0200 |
---|---|---|
committer | Zolnai Tamás <tamas.zolnai@collabora.com> | 2014-05-25 15:39:39 +0200 |
commit | 25db60d2e4f1097cdd6a9944e96461fe57658628 (patch) | |
tree | 5223fe9c46695d37b75bdeed46607051ab5e7ac3 | |
parent | a850d96fade014f11bc076fb916fae8c7c5eaecb (diff) |
Partly revert 4ec3554a80f065c2d9c957d6ce7f577fb195be02
mpEvents is freed by other object so using
scoped_ptr lead to crash.
Change-Id: I28c9d322b5ee5da6edf5022da18b42f59b608dec
-rw-r--r-- | avmedia/source/viewer/mediawindow_impl.cxx | 3 | ||||
-rw-r--r-- | avmedia/source/viewer/mediawindow_impl.hxx | 2 |
2 files changed, 2 insertions, 3 deletions
diff --git a/avmedia/source/viewer/mediawindow_impl.cxx b/avmedia/source/viewer/mediawindow_impl.cxx index 1310832aaf99..a3618430c1b0 100644 --- a/avmedia/source/viewer/mediawindow_impl.cxx +++ b/avmedia/source/viewer/mediawindow_impl.cxx @@ -510,8 +510,7 @@ void MediaWindowImpl::onURLChanged() if( !mpChildWindow ) return; mpChildWindow->SetHelpId( HID_AVMEDIA_PLAYERWINDOW ); - mpEvents.reset(new MediaEventListenersImpl( *mpChildWindow.get() ) ); - mxEventsIf.set( static_cast< ::cppu::OWeakObject* >( mpEvents.get() ) ); + mxEventsIf.set( static_cast< ::cppu::OWeakObject* >( mpEvents = new MediaEventListenersImpl( *mpChildWindow.get() ) ) ); if( mxPlayer.is() ) { diff --git a/avmedia/source/viewer/mediawindow_impl.hxx b/avmedia/source/viewer/mediawindow_impl.hxx index d6084305b199..7bf7f369143f 100644 --- a/avmedia/source/viewer/mediawindow_impl.hxx +++ b/avmedia/source/viewer/mediawindow_impl.hxx @@ -171,7 +171,7 @@ namespace avmedia MediaWindow* mpMediaWindow; ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > mxEventsIf; - boost::scoped_ptr<MediaEventListenersImpl> mpEvents; + MediaEventListenersImpl* mpEvents; bool mbEventTransparent; boost::scoped_ptr<MediaChildWindow> mpChildWindow; MediaWindowControl* mpMediaWindowControl; |