diff --git a/src/osgViewer/ScreenCaptureHandler.cpp b/src/osgViewer/ScreenCaptureHandler.cpp index 27a8eb3e6..b02753b9c 100644 --- a/src/osgViewer/ScreenCaptureHandler.cpp +++ b/src/osgViewer/ScreenCaptureHandler.cpp @@ -747,7 +747,10 @@ osg::Camera* ScreenCaptureHandler::findAppropriateCameraForCallback(osgViewer::V // of that view's graphics contexts. bool ScreenCaptureHandler::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa) { - osgViewer::ViewerBase* viewer = dynamic_cast(&aa)->getViewerBase(); + osgViewer::View* view = dynamic_cast(&aa); + if (!view) return false; + + osgViewer::ViewerBase* viewer = view->getViewerBase(); if (!viewer) return false; switch(ea.getEventType())