From d829644650b3c17afa2ee92f91e8911a06a9c57c Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Sat, 20 Jun 2026 01:34:33 +0100 Subject: [PATCH] reduce unnecessary saves of attachments a bit --- .../Avatar/Attachments/AttachmentsModule.cs | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs index f081bdddd8..e621d5a577 100755 --- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs @@ -1008,6 +1008,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments /// private void UpdateKnownItem(IScenePresence sp, SceneObjectGroup grp, string scriptedState) { + if (sp.IsNPC) + return; + + if (m_invAccessModule is null) + return; + if(!grp.HasGroupChanged) { if (DebugLevel > 0) @@ -1020,20 +1026,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments grp.HasGroupChanged = false; - if (m_invAccessModule is null) - return; - if (grp.FromItemID.IsZero()) { // We can't save temp attachments return; } - if (sp.IsNPC) - { - return; - } - m_log.Debug($"[ATTACHMENTS MODULE]: Updating asset for attachment {grp.UUID}, attachpoint {grp.AttachmentPoint}"); InventoryItemBase item = m_scene.InventoryService.GetItem(sp.UUID, grp.FromItemID); @@ -1153,6 +1151,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments so.IsSelected = false; // fudge.... so.ScheduleGroupForUpdate(PrimUpdateFlags.FullUpdatewithAnimMatOvr); + so.HasGroupChanged = false; } // In case it is later dropped again, don't let