aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs21
1 files changed, 14 insertions, 7 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 09cbbfe..948dca2 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -1724,19 +1724,23 @@ namespace OpenSim.Region.Framework.Scenes
1724 1724
1725 #endregion 1725 #endregion
1726 1726
1727 // Send the parts of this SOG to a single client 1727 /// <summary>
1728 // Used when the client initially connects and when client sends RequestPrim packet 1728 /// Send the parts of this SOG to a single client
1729 /// </summary>
1730 /// <remarks>
1731 /// Used when the client initially connects and when client sends RequestPrim packet
1732 /// </remarks>
1733 /// <param name="remoteClient"></param>
1729 public void SendFullUpdateToClient(IClientAPI remoteClient) 1734 public void SendFullUpdateToClient(IClientAPI remoteClient)
1730 { 1735 {
1731 RootPart.SendFullUpdate( 1736 RootPart.SendFullUpdate(remoteClient);
1732 remoteClient, m_scene.Permissions.GenerateClientFlags(remoteClient.AgentId, RootPart.UUID));
1733 1737
1734 SceneObjectPart[] parts = m_parts.GetArray(); 1738 SceneObjectPart[] parts = m_parts.GetArray();
1735 for (int i = 0; i < parts.Length; i++) 1739 for (int i = 0; i < parts.Length; i++)
1736 { 1740 {
1737 SceneObjectPart part = parts[i]; 1741 SceneObjectPart part = parts[i];
1738 if (part != RootPart) 1742 if (part != RootPart)
1739 part.SendFullUpdate(remoteClient, m_scene.Permissions.GenerateClientFlags(remoteClient.AgentId, part.UUID)); 1743 part.SendFullUpdate(remoteClient);
1740 } 1744 }
1741 } 1745 }
1742 1746
@@ -2067,10 +2071,11 @@ namespace OpenSim.Region.Framework.Scenes
2067 2071
2068 /// <summary> 2072 /// <summary>
2069 /// Reset the UUIDs for all the prims that make up this group. 2073 /// Reset the UUIDs for all the prims that make up this group.
2070 /// 2074 /// </summary>
2075 /// <remarks>
2071 /// This is called by methods which want to add a new group to an existing scene, in order 2076 /// This is called by methods which want to add a new group to an existing scene, in order
2072 /// to ensure that there are no clashes with groups already present. 2077 /// to ensure that there are no clashes with groups already present.
2073 /// </summary> 2078 /// </remarks>
2074 public void ResetIDs() 2079 public void ResetIDs()
2075 { 2080 {
2076 lock (m_parts.SyncRoot) 2081 lock (m_parts.SyncRoot)
@@ -3636,6 +3641,8 @@ namespace OpenSim.Region.Framework.Scenes
3636 part.Inventory.ChangeInventoryGroup(GroupID); 3641 part.Inventory.ChangeInventoryGroup(GroupID);
3637 } 3642 }
3638 3643
3644 HasGroupChanged = true;
3645
3639 // Don't trigger the update here - otherwise some client issues occur when multiple updates are scheduled 3646 // Don't trigger the update here - otherwise some client issues occur when multiple updates are scheduled
3640 // for the same object with very different properties. The caller must schedule the update. 3647 // for the same object with very different properties. The caller must schedule the update.
3641 //ScheduleGroupForFullUpdate(); 3648 //ScheduleGroupForFullUpdate();