summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2021-08-16 22:11:52 +0300
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2021-08-16 22:11:52 +0300
commitc29a902e73808263a189cb09525e4aff1a7401e9 (patch)
treec486c50106e510900049ca1a645e5c9af010077b /indra
parent23ad54c5a373946e034beed229612fd4d2292763 (diff)
SL-14988 Overflow can keep flexi from updating
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llflexibleobject.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/indra/newview/llflexibleobject.cpp b/indra/newview/llflexibleobject.cpp
index e075a311c2..ea019bcb93 100644
--- a/indra/newview/llflexibleobject.cpp
+++ b/indra/newview/llflexibleobject.cpp
@@ -389,7 +389,8 @@ void LLVolumeImplFlexible::doIdleUpdate()
U64 throttling_delay = (virtual_frame_num + id) % update_period;
if ((throttling_delay == 0 && mLastFrameNum < virtual_frame_num) //one or more virtual frames per frame
- || (mLastFrameNum + update_period < virtual_frame_num)) // missed virtual frame
+ || (mLastFrameNum + update_period < virtual_frame_num) // missed virtual frame
+ || mLastFrameNum > virtual_frame_num) // overflow
{
// We need mLastFrameNum to compensate for 'unreliable time' and to filter 'duplicate' frames
// If happened too late, subtract throttling_delay (it is zero otherwise)