summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorGraham Linden <graham@lindenlab.com>2019-05-14 11:26:38 -0700
committerGraham Linden <graham@lindenlab.com>2019-05-14 11:26:38 -0700
commit9f9b96580c7632fca739a865005190282fb17881 (patch)
tree76b0e8ae46c5c3f9f40a173c34a441efb5f733c5 /indra
parentb9cd2ca7907e1543b77597fb7d9280944a9fa4bd (diff)
SL-11101
Don't short-circuit getVisibleExtents as its side-effects are relevant.
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/pipeline.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 628e7ae2d7..cd0a50113b 100644
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -2327,6 +2327,8 @@ bool LLPipeline::getVisibleExtents(LLCamera& camera, LLVector3& min, LLVector3&
LLViewerCamera::eCameraID saved_camera_id = LLViewerCamera::sCurCameraID;
LLViewerCamera::sCurCameraID = LLViewerCamera::CAMERA_WORLD;
+ bool res = true;
+
for (LLWorld::region_list_t::const_iterator iter = LLWorld::getInstance()->getRegionList().begin();
iter != LLWorld::getInstance()->getRegionList().end(); ++iter)
{
@@ -2337,17 +2339,20 @@ bool LLPipeline::getVisibleExtents(LLCamera& camera, LLVector3& min, LLVector3&
LLSpatialPartition* part = region->getSpatialPartition(i);
if (part)
{
- if (hasRenderType(part->mDrawableType) && !part->getVisibleExtents(camera, min, max))
+ if (hasRenderType(part->mDrawableType))
{
- LLViewerCamera::sCurCameraID = saved_camera_id;
- return false;
+ if (!part->getVisibleExtents(camera, min, max))
+ {
+ res = false;
+ }
}
}
}
}
LLViewerCamera::sCurCameraID = saved_camera_id;
- return true;
+
+ return res;
}
static LLTrace::BlockTimerStatHandle FTM_CULL("Object Culling");