diff --git a/simgear/scene/material/EffectCullVisitor.cxx b/simgear/scene/material/EffectCullVisitor.cxx index a1a4fa82..62952a9f 100644 --- a/simgear/scene/material/EffectCullVisitor.cxx +++ b/simgear/scene/material/EffectCullVisitor.cxx @@ -54,8 +54,9 @@ void EffectCullVisitor::apply(osg::Geode& node) CullVisitor::apply(node); return; } - Technique* technique = eg->getEffect()->chooseTechnique(&getRenderInfo()); - if (!technique) { + Effect* effect = eg->getEffect(); + Technique* technique = 0; + if (!(effect && (technique = effect->chooseTechnique(&getRenderInfo())))) { CullVisitor::apply(node); return; }