From 74a1b7881e5d606b5dec70803badb04a5b6334c7 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Tue, 22 Jul 2008 10:13:57 +0000 Subject: [PATCH] Disabled the setting of Texture::setUnrefImageOnApply(true) when the imagery is an ImageStream. --- src/osgUtil/Optimizer.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/osgUtil/Optimizer.cpp b/src/osgUtil/Optimizer.cpp index 63d3d60af..b946e29c5 100644 --- a/src/osgUtil/Optimizer.cpp +++ b/src/osgUtil/Optimizer.cpp @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include @@ -2909,7 +2910,17 @@ void Optimizer::TextureVisitor::apply(osg::Texture& texture) { if (_changeAutoUnRef) { - texture.setUnRefImageDataAfterApply(_valueAutoUnRef); + unsigned numImageStreams = 0; + for (unsigned int i=0; i(texture.getImage(i)); + if (is) ++numImageStreams; + } + + if (numImageStreams==0) + { + texture.setUnRefImageDataAfterApply(_valueAutoUnRef); + } } if (_changeClientImageStorage)