From 27fc282bb5d970e2a59d1b6c566aa5e7d5495341 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Wed, 27 Jun 2018 09:06:58 +0100 Subject: [PATCH] Fixed relaseGLObjects() calls --- src/osg/OcclusionQueryNode.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/osg/OcclusionQueryNode.cpp b/src/osg/OcclusionQueryNode.cpp index 45ac9cc99..d4c86c483 100644 --- a/src/osg/OcclusionQueryNode.cpp +++ b/src/osg/OcclusionQueryNode.cpp @@ -711,13 +711,10 @@ void OcclusionQueryNode::createSupportNodes() void OcclusionQueryNode::releaseGLObjects( State* state ) const { - if(_queryGeode->getDrawable( 0 ) != NULL) - { - // Query object discard and deletion is handled by QueryGeometry support class. - OcclusionQueryNode* nonConstThis = const_cast< OcclusionQueryNode* >( this ); - QueryGeometry* qg = static_cast< QueryGeometry* >( nonConstThis->_queryGeode->getDrawable( 0 ) ); - qg->releaseGLObjects( state ); - } + if (_queryGeode.valid()) _queryGeode->releaseGLObjects(state); + if (_debugGeode.valid()) _debugGeode->releaseGLObjects(state); + + osg::Group::releaseGLObjects(state); } void OcclusionQueryNode::flushDeletedQueryObjects( unsigned int contextID, double currentTime, double& availableTime )