summaryrefslogtreecommitdiff
path: root/indra/newview/llvoavatar.cpp
diff options
context:
space:
mode:
authortrish-sl <sl.trish.ace@gmail.com>2026-09-10 12:31:59 -0400
committerGitHub <noreply@github.com>2026-09-10 19:31:59 +0300
commit0f7c18e4ef748d34c611941b66fe22d646aafc4f (patch)
tree941bf2d32487d5d3071b50c5cd797b8b540c254c /indra/newview/llvoavatar.cpp
parent6d2e52aaedb3c8a61ec33e95b7d939619953d34c (diff)
#3850 Preserve followcam through momentary avatar loss (#6237)
Diffstat (limited to 'indra/newview/llvoavatar.cpp')
-rw-r--r--indra/newview/llvoavatar.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index de8032ac40..0043732182 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -8044,6 +8044,18 @@ void LLVOAvatar::getOffObject()
if (sit_object)
{
+ // A dead sit_object may be temporarily unavailable while it is being
+ // reconstructed during a crossing.
+ // Preserve the follow-cam grace period in that case.
+ // An avatar getting off an object is an explicit action that clears
+ // the grace period on its own.
+ // In such a case, FollowCam Params should've been or will be cleared
+ // in a different path.
+ if (isSelf() && !sit_object->isDead())
+ {
+ gAgentCamera.notifyFollowCamParamsCleared();
+ }
+
stopMotionFromSource(sit_object->getID());
LLFollowCamMgr::getInstance()->setCameraActive(sit_object->getID(), false);