From 82c4a2ff413999c1ed1d9e177990904dab74e042 Mon Sep 17 00:00:00 2001 From: Roger Luedecke Date: Fri, 11 Sep 2026 13:02:00 -0700 Subject: [PATCH] Fix vehicle unseating on region crossings by ignoring outgoing sim kills --- indra/newview/llviewermessage.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index b52114a3bf..b6bf0d25b9 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -4027,6 +4027,22 @@ void process_kill_object(LLMessageSystem *mesgsys, void **user_data) } // [/SL:KB] + // Block vehicle / seat kills sent by the outgoing simulator during region crossings + if ( regionp && (regionp != gAgent.getRegion()) && + isAgentAvatarValid() && gAgentAvatarp->isSitting() ) + { + LLViewerObject* rootp = objectp->getRootEdit(); + if (rootp && (gAgentAvatarp->getRoot() == rootp)) + { + if (objectp == rootp) + { + LL_INFOS("Avatar") << "Ignoring vehicle kill from outgoing region " << regionp->getName() + << " for seated root object " << rootp->getID() << LL_ENDL; + } + continue; + } + } + // Display green bubble on kill if ( gShowObjectUpdates ) {