diff --git a/simgear/scene/tgdb/TreeBin.cxx b/simgear/scene/tgdb/TreeBin.cxx index ee8f4b39..194a15be 100644 --- a/simgear/scene/tgdb/TreeBin.cxx +++ b/simgear/scene/tgdb/TreeBin.cxx @@ -233,9 +233,11 @@ void addTreeToLeafGeode(Geode* geode, const SGVec3f& p, const SGVec3f& t) int imax = 2; if (use_tree_shadows) { imax = 3; } for (int i = 0; i < imax; ++i) { - DrawArrays* primSet = static_cast(geom->getPrimitiveSet(i)); - if(primSet != nullptr) - primSet->setCount(numVerts); + if (i < geom->getNumPrimitiveSets()) { + DrawArrays* primSet = static_cast(geom->getPrimitiveSet(i)); + if (primSet != nullptr) + primSet->setCount(numVerts); + } } } }