diff options
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index f9266b4..fd1ec82 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -3515,10 +3515,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
3515 | 3515 | ||
3516 | SendAppearanceToAgent(this); | 3516 | SendAppearanceToAgent(this); |
3517 | 3517 | ||
3518 | // if (cachedappearance) | 3518 | m_inTransit = false; |
3519 | // { | 3519 | |
3520 | SendAppearanceToAllOtherAgents(); | 3520 | SendAppearanceToAllOtherAgents(); |
3521 | // } | 3521 | |
3522 | if(Animator!= null) | 3522 | if(Animator!= null) |
3523 | Animator.SendAnimPack(); | 3523 | Animator.SendAnimPack(); |
3524 | } | 3524 | } |
@@ -4668,7 +4668,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
4668 | 4668 | ||
4669 | public void SendAttachmentScheduleUpdate(SceneObjectGroup sog) | 4669 | public void SendAttachmentScheduleUpdate(SceneObjectGroup sog) |
4670 | { | 4670 | { |
4671 | if (IsChildAgent) | 4671 | if (IsChildAgent || IsInTransit) |
4672 | return; | 4672 | return; |
4673 | 4673 | ||
4674 | SceneObjectPart[] origparts = sog.Parts; | 4674 | SceneObjectPart[] origparts = sog.Parts; |
@@ -4746,7 +4746,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
4746 | 4746 | ||
4747 | public void SendAttachmentUpdate(SceneObjectGroup sog, UpdateRequired UpdateFlag) | 4747 | public void SendAttachmentUpdate(SceneObjectGroup sog, UpdateRequired UpdateFlag) |
4748 | { | 4748 | { |
4749 | if (IsChildAgent) | 4749 | if (IsChildAgent || IsInTransit) |
4750 | return; | 4750 | return; |
4751 | 4751 | ||
4752 | PrimUpdateFlags flag; | 4752 | PrimUpdateFlags flag; |
@@ -4796,7 +4796,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
4796 | 4796 | ||
4797 | public void SendAttachmentScheduleUpdate(SceneObjectPart part) | 4797 | public void SendAttachmentScheduleUpdate(SceneObjectPart part) |
4798 | { | 4798 | { |
4799 | if (IsChildAgent) | 4799 | if (IsChildAgent || IsInTransit) |
4800 | return; | 4800 | return; |
4801 | 4801 | ||
4802 | 4802 | ||
@@ -4836,7 +4836,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
4836 | 4836 | ||
4837 | public void SendAttachmentUpdate(SceneObjectPart part, UpdateRequired UpdateFlag) | 4837 | public void SendAttachmentUpdate(SceneObjectPart part, UpdateRequired UpdateFlag) |
4838 | { | 4838 | { |
4839 | if (IsChildAgent) | 4839 | if (IsChildAgent || IsInTransit) |
4840 | return; | 4840 | return; |
4841 | 4841 | ||
4842 | PrimUpdateFlags flag; | 4842 | PrimUpdateFlags flag; |
@@ -5850,7 +5850,12 @@ namespace OpenSim.Region.Framework.Scenes | |||
5850 | { | 5850 | { |
5851 | List<ScenePresence> allpresences = m_scene.GetScenePresences(); | 5851 | List<ScenePresence> allpresences = m_scene.GetScenePresences(); |
5852 | foreach (ScenePresence p in allpresences) | 5852 | foreach (ScenePresence p in allpresences) |
5853 | SendKillTo(p); | 5853 | { |
5854 | if (p == this) | ||
5855 | continue; | ||
5856 | SendKillTo(p); | ||
5857 | p.SendKillTo(this); | ||
5858 | } | ||
5854 | if (Scene.AttachmentsModule != null) | 5859 | if (Scene.AttachmentsModule != null) |
5855 | Scene.AttachmentsModule.DeleteAttachmentsFromScene(this, true); | 5860 | Scene.AttachmentsModule.DeleteAttachmentsFromScene(this, true); |
5856 | } | 5861 | } |