From b5bb541cca0e9f2f588a348850e02677ac7dc984 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Tue, 14 Nov 2006 12:49:53 +0000 Subject: [PATCH] From Stephan Huber, Follows is required to prevent unidented cloning of shared arrays : "I added some calls to isOperationPermissibleForObject() so I can permit the flattten-pass with my specialized objects in my own code." --- src/osgUtil/Optimizer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/osgUtil/Optimizer.cpp b/src/osgUtil/Optimizer.cpp index bd4caeab8..219b08135 100644 --- a/src/osgUtil/Optimizer.cpp +++ b/src/osgUtil/Optimizer.cpp @@ -1097,7 +1097,7 @@ void Optimizer::FlattenStaticTransformsVisitor::apply(osg::Geode& geode) for(unsigned int i=0;iasGeometry(); - if(geometry) + if((geometry) && (isOperationPermissibleForObject(&geode)) && (isOperationPermissibleForObject(geometry))) { if(geometry->getVertexArray() && geometry->getVertexArray()->referenceCount() > 1) { geometry->setVertexArray(dynamic_cast(geometry->getVertexArray()->clone(osg::CopyOp::DEEP_COPY_ALL)));