aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
diff options
context:
space:
mode:
authorUbitUmarov2012-02-24 02:13:43 +0000
committerUbitUmarov2012-02-24 02:13:43 +0000
commit5145980c7432cfb7b42835e408015cd906c656b5 (patch)
tree5563d88e40cf2b0aded2c5f0ba44c46ff301d3cb /OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
parentMerge branch 'master' of ssh://3dhosting.de/var/git/careminster into ubitwork (diff)
parentPrevent a nullref when nonphysical motion objects cross sim boundaries (diff)
downloadopensim-SC-5145980c7432cfb7b42835e408015cd906c656b5.zip
opensim-SC-5145980c7432cfb7b42835e408015cd906c656b5.tar.gz
opensim-SC-5145980c7432cfb7b42835e408015cd906c656b5.tar.bz2
opensim-SC-5145980c7432cfb7b42835e408015cd906c656b5.tar.xz
Merge branch 'master' of ssh://3dhosting.de/var/git/careminster into ubitwork
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs12
1 files changed, 10 insertions, 2 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 1ac3b76..f835e56 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -3774,6 +3774,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3774 // doesn't seem to be attached, skip 3774 // doesn't seem to be attached, skip
3775 if (!found) 3775 if (!found)
3776 continue; 3776 continue;
3777
3778 // On vehicle crossing, the attachments are received
3779 // while the avatar is still a child. Don't send
3780 // updates here because the LocalId has not yet
3781 // been updated and the viewer will derender the
3782 // attachments until the avatar becomes root.
3783 if (sp.IsChildAgent)
3784 continue;
3777 } 3785 }
3778 if (part.ParentGroup.IsAttachment && m_disableFacelights) 3786 if (part.ParentGroup.IsAttachment && m_disableFacelights)
3779 { 3787 {
@@ -4837,7 +4845,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4837 if (part != null && part != part.ParentGroup.RootPart) 4845 if (part != null && part != part.ParentGroup.RootPart)
4838 { 4846 {
4839 position = part.OffsetPosition + presence.OffsetPosition * part.RotationOffset; 4847 position = part.OffsetPosition + presence.OffsetPosition * part.RotationOffset;
4840 rotation = presence.Rotation * part.RotationOffset; 4848 rotation = part.RotationOffset * presence.Rotation;
4841 } 4849 }
4842 } 4850 }
4843 4851
@@ -4966,7 +4974,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4966 if (part != null && part != part.ParentGroup.RootPart) 4974 if (part != null && part != part.ParentGroup.RootPart)
4967 { 4975 {
4968 offsetPosition = part.OffsetPosition + data.OffsetPosition * part.RotationOffset; 4976 offsetPosition = part.OffsetPosition + data.OffsetPosition * part.RotationOffset;
4969 rotation = data.Rotation * part.RotationOffset; 4977 rotation = part.RotationOffset * data.Rotation;
4970 parentID = part.ParentGroup.RootPart.LocalId; 4978 parentID = part.ParentGroup.RootPart.LocalId;
4971 } 4979 }
4972 } 4980 }