summaryrefslogtreecommitdiff
path: root/slideshow/source/engine/transitions
diff options
context:
space:
mode:
Diffstat (limited to 'slideshow/source/engine/transitions')
-rw-r--r--slideshow/source/engine/transitions/slidechangebase.cxx4
1 files changed, 2 insertions, 2 deletions
diff --git a/slideshow/source/engine/transitions/slidechangebase.cxx b/slideshow/source/engine/transitions/slidechangebase.cxx
index e5a24e8450a2..a13dd27be25f 100644
--- a/slideshow/source/engine/transitions/slidechangebase.cxx
+++ b/slideshow/source/engine/transitions/slidechangebase.cxx
@@ -176,7 +176,7 @@ void SlideChangeBase::prefetch( const AnimatableShapeSharedPtr&,
return;
// register ourselves for view change events
- mrEventMultiplexer.addViewHandler( std::shared_ptr<ViewEventHandler>(this) );
+ mrEventMultiplexer.addViewHandler( std::dynamic_pointer_cast<ViewEventHandler>(shared_from_this()) );
// init views and create slide bitmaps
for( const auto& pView : mrViewContainer )
@@ -251,7 +251,7 @@ void SlideChangeBase::end()
mbSpritesVisible = false;
// remove also from event multiplexer, we're dead anyway
- mrEventMultiplexer.removeViewHandler( std::shared_ptr<ViewEventHandler>(this) );
+ mrEventMultiplexer.removeViewHandler( std::dynamic_pointer_cast<ViewEventHandler>(shared_from_this()) );
}
bool SlideChangeBase::operator()( double nValue )