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.cs16
1 files changed, 8 insertions, 8 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 0ea4e09..02a8935 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -1862,11 +1862,11 @@ namespace OpenSim.Region.Framework.Scenes
1862 /// <summary> 1862 /// <summary>
1863 /// Delete this group from its scene. 1863 /// Delete this group from its scene.
1864 /// </summary> 1864 /// </summary>
1865 /// 1865 /// <remarks>
1866 /// This only handles the in-world consequences of deletion (e.g. any avatars sitting on it are forcibly stood 1866 /// This only handles the in-world consequences of deletion (e.g. any avatars sitting on it are forcibly stood
1867 /// up and all avatars receive notification of its removal. Removal of the scene object from database backup 1867 /// up and all avatars receive notification of its removal. Removal of the scene object from database backup
1868 /// must be handled by the caller. 1868 /// must be handled by the caller.
1869 /// 1869 /// </remarks>
1870 /// <param name="silent">If true then deletion is not broadcast to clients</param> 1870 /// <param name="silent">If true then deletion is not broadcast to clients</param>
1871 public void DeleteGroupFromScene(bool silent) 1871 public void DeleteGroupFromScene(bool silent)
1872 { 1872 {
@@ -1880,10 +1880,10 @@ namespace OpenSim.Region.Framework.Scenes
1880 { 1880 {
1881 SceneObjectPart part = parts[i]; 1881 SceneObjectPart part = parts[i];
1882 1882
1883 Scene.ForEachRootScenePresence(delegate(ScenePresence avatar) 1883 Scene.ForEachScenePresence(sp =>
1884 { 1884 {
1885 if (avatar.ParentID == LocalId) 1885 if (!sp.IsChildAgent && sp.ParentID == LocalId)
1886 avatar.StandUp(); 1886 sp.StandUp();
1887 1887
1888 if (!silent) 1888 if (!silent)
1889 { 1889 {
@@ -1891,9 +1891,9 @@ namespace OpenSim.Region.Framework.Scenes
1891 if (part == m_rootPart) 1891 if (part == m_rootPart)
1892 { 1892 {
1893 if (!IsAttachment 1893 if (!IsAttachment
1894 || AttachedAvatar == avatar.ControllingClient.AgentId 1894 || AttachedAvatar == sp.UUID
1895 || !HasPrivateAttachmentPoint) 1895 || !HasPrivateAttachmentPoint)
1896 avatar.ControllingClient.SendKillObject(m_regionHandle, new List<uint> { part.LocalId }); 1896 sp.ControllingClient.SendKillObject(new List<uint> { part.LocalId });
1897 } 1897 }
1898 } 1898 }
1899 }); 1899 });
@@ -2202,7 +2202,7 @@ namespace OpenSim.Region.Framework.Scenes
2202 if (!userExposed) 2202 if (!userExposed)
2203 dupe.IsAttachment = true; 2203 dupe.IsAttachment = true;
2204 2204
2205 dupe.AbsolutePosition = new Vector3(AbsolutePosition.X, AbsolutePosition.Y, AbsolutePosition.Z); 2205 dupe.m_sittingAvatars = new List<UUID>();
2206 2206
2207 if (!userExposed) 2207 if (!userExposed)
2208 { 2208 {