From 96a88f968ac4277786ea95618cef860d60aa17fd Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Thu, 27 Oct 2005 11:11:02 +0000 Subject: [PATCH] Added error message to report when too many line segments are added to an IntersectVisitor. --- src/osgUtil/IntersectVisitor.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/osgUtil/IntersectVisitor.cpp b/src/osgUtil/IntersectVisitor.cpp index 66ecebf58..5fdbc262d 100644 --- a/src/osgUtil/IntersectVisitor.cpp +++ b/src/osgUtil/IntersectVisitor.cpp @@ -219,9 +219,16 @@ void IntersectVisitor::addLineSegment(LineSegment* seg) notify(WARN)<<" "<start()<<" "<end()<<" segment ignored.."<< std::endl; return; } - + IntersectState* cis = _intersectStateStack.back().get(); + if (cis->_segList.size()>=32) + { + notify(WARN)<<"Warning: excessive number of line segmenets passed to IntersectVisitor::addLineSegment(..), maximum permitted is 32 line segments."<start()<<" "<end()<<" segment ignored.."<< std::endl; + return; + } + setEyePoint(seg->start()); // set start of line segment to be pseudo EyePoint for billboarding and LOD purposes // first check to see if segment has already been added.