aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs8
-rw-r--r--OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs2
2 files changed, 9 insertions, 1 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
index 6122cc2..929db21 100644
--- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
@@ -527,10 +527,16 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
527 /// <param name="grp"></param> 527 /// <param name="grp"></param>
528 /// <param name="itemID"></param> 528 /// <param name="itemID"></param>
529 /// <param name="agentID"></param> 529 /// <param name="agentID"></param>
530 protected void UpdateKnownItem(IClientAPI remoteClient, SceneObjectGroup grp, UUID itemID, UUID agentID) 530 public void UpdateKnownItem(IClientAPI remoteClient, SceneObjectGroup grp, UUID itemID, UUID agentID)
531 { 531 {
532 if (grp != null) 532 if (grp != null)
533 { 533 {
534 // If an item contains scripts, it's always changed.
535 // This ensures script state is saved on detach
536 foreach (SceneObjectPart p in grp.Parts)
537 if (p.Inventory.ContainsScripts())
538 grp.HasGroupChanged = true;
539
534 if (!grp.HasGroupChanged) 540 if (!grp.HasGroupChanged)
535 { 541 {
536 m_log.WarnFormat("[ATTACHMENTS MODULE]: Save request for {0} which is unchanged", grp.UUID); 542 m_log.WarnFormat("[ATTACHMENTS MODULE]: Save request for {0} which is unchanged", grp.UUID);
diff --git a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
index a675928..1d9aeb9 100644
--- a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
@@ -133,5 +133,7 @@ namespace OpenSim.Region.Framework.Interfaces
133 /// <param name="sog"></param> 133 /// <param name="sog"></param>
134 /// <param name="pos"></param> 134 /// <param name="pos"></param>
135 void UpdateAttachmentPosition(IClientAPI client, SceneObjectGroup sog, Vector3 pos); 135 void UpdateAttachmentPosition(IClientAPI client, SceneObjectGroup sog, Vector3 pos);
136
137 void UpdateKnownItem(IClientAPI remoteClient, SceneObjectGroup grp, UUID itemID, UUID agentID);
136 } 138 }
137} 139}