From 6ce53fb7b027509b4e2c974b182128753a91a6d5 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Tue, 24 May 2011 10:19:22 +0000 Subject: [PATCH] Fixed Coverity issue. CID 12328: Resource leak (RESOURCE_LEAK) Calling allocation function "osg::KdTree::cloneType() const". (The virtual call resolves to "osg::Object * osg::KdTree::cloneType() const".) [show details] Failing to save storage allocated by "this->_kdTreePrototype->cloneType()" leaks it. --- src/osg/KdTree.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/osg/KdTree.cpp b/src/osg/KdTree.cpp index 70b78ac0f..92b4d316e 100644 --- a/src/osg/KdTree.cpp +++ b/src/osg/KdTree.cpp @@ -812,7 +812,8 @@ void KdTreeBuilder::apply(osg::Geode& geode) osg::KdTree* previous = dynamic_cast(geom->getShape()); if (previous) continue; - osg::ref_ptr kdTree = dynamic_cast(_kdTreePrototype->cloneType()); + osg::ref_ptr obj = _kdTreePrototype->cloneType(); + osg::ref_ptr kdTree = dynamic_cast(obj.get()); if (kdTree->build(_buildOptions, geom)) {