summaryrefslogtreecommitdiff
path: root/indra/newview/llworld.cpp
diff options
context:
space:
mode:
authorDave Houlton <euclid@lindenlab.com>2020-07-09 23:37:52 +0000
committerDave Houlton <euclid@lindenlab.com>2020-07-09 23:37:52 +0000
commitfbf1d2a6110a19fd164f6c27a748ce27731b938d (patch)
treeb0c2e7d44863d212ef9ab58803f705462e0d9653 /indra/newview/llworld.cpp
parent97a33b8322ee5c38b13424f8ae3c840f4ffec76f (diff)
parent8edcb5bf89de420ffd42a24cb1fb22c86e1c7571 (diff)
Merged in euclid-pull_to_LMR4-13397-13443 (pull request #192)
Pull MAINT fixes for SL-13397 and SL-13443 into LMR#4 branch Approved-by: Andrey Kleshchev Approved-by: Michael Pohoreski
Diffstat (limited to 'indra/newview/llworld.cpp')
-rw-r--r--indra/newview/llworld.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/indra/newview/llworld.cpp b/indra/newview/llworld.cpp
index 8989bae96a..a1a1db35d6 100644
--- a/indra/newview/llworld.cpp
+++ b/indra/newview/llworld.cpp
@@ -730,11 +730,20 @@ void LLWorld::updateRegions(F32 max_update_time)
{
//perform some necessary but very light updates.
(*iter)->lightIdleUpdate();
- }
+ }
+ }
+
+ if(max_time > 0.f)
+ {
+ max_time = llmin((F32)(max_update_time - update_timer.getElapsedTimeF32()), max_update_time * 0.25f);
+ }
+ if(max_time > 0.f)
+ {
+ LLViewerRegion::idleCleanup(max_time);
}
sample(sNumActiveCachedObjects, mNumOfActiveCachedObjects);
- }
+}
void LLWorld::clearAllVisibleObjects()
{
@@ -1208,11 +1217,14 @@ public:
}
};
+static LLTrace::BlockTimerStatHandle FTM_DISABLE_REGION("Disable Region");
// disable the circuit to this simulator
// Called in response to "DisableSimulator" message.
void process_disable_simulator(LLMessageSystem *mesgsys, void **user_data)
-{
- LLHost host = mesgsys->getSender();
+{
+ LL_RECORD_BLOCK_TIME(FTM_DISABLE_REGION);
+
+ LLHost host = mesgsys->getSender();
//LL_INFOS() << "Disabling simulator with message from " << host << LL_ENDL;
LLWorld::getInstance()->removeRegion(host);