diff --git a/components/resource/objectcache.cpp b/components/resource/objectcache.cpp index 5fec6730d6..7caf5366c9 100644 --- a/components/resource/objectcache.cpp +++ b/components/resource/objectcache.cpp @@ -129,9 +129,12 @@ void ObjectCache::accept(osg::NodeVisitor &nv) ++itr) { osg::Object* object = itr->second.first.get(); - osg::Node* node = object->asNode(); - if (node) - node->accept(nv); + if (object) + { + osg::Node* node = dynamic_cast(object); + if (node) + node->accept(nv); + } } }