diff options
author | Melanie | 2013-06-23 01:48:57 +0100 |
---|---|---|
committer | Melanie | 2013-06-23 01:48:57 +0100 |
commit | 24a4367fc2ff9456ec165db14a646dba977550a0 (patch) | |
tree | f6880151d7b5e4749685dc4f4cc5d1130a9544e7 /OpenSim/Region/CoreModules | |
parent | Merge branch 'master' into careminster (diff) | |
parent | Fix prim locking to behave like SL (diff) | |
download | opensim-SC_OLD-24a4367fc2ff9456ec165db14a646dba977550a0.zip opensim-SC_OLD-24a4367fc2ff9456ec165db14a646dba977550a0.tar.gz opensim-SC_OLD-24a4367fc2ff9456ec165db14a646dba977550a0.tar.bz2 opensim-SC_OLD-24a4367fc2ff9456ec165db14a646dba977550a0.tar.xz |
Merge branch 'avination-current' into careminster
Conflicts:
OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs index 588da10..aa00145 100644 --- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs +++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs | |||
@@ -794,6 +794,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
794 | XmlDocument doc = new XmlDocument(); | 794 | XmlDocument doc = new XmlDocument(); |
795 | doc.LoadXml(xmlData); | 795 | doc.LoadXml(xmlData); |
796 | XmlElement e = (XmlElement)doc.SelectSingleNode("/CoalescedObject"); | 796 | XmlElement e = (XmlElement)doc.SelectSingleNode("/CoalescedObject"); |
797 | Vector3 rez_pos; | ||
797 | if (e == null || attachment) // Single | 798 | if (e == null || attachment) // Single |
798 | { | 799 | { |
799 | SceneObjectGroup g = SceneObjectSerializer.FromOriginalXmlFormat(xmlData); | 800 | SceneObjectGroup g = SceneObjectSerializer.FromOriginalXmlFormat(xmlData); |
@@ -815,6 +816,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
815 | RayStart, RayEnd, RayTargetID, Quaternion.Identity, | 816 | RayStart, RayEnd, RayTargetID, Quaternion.Identity, |
816 | BypassRayCast, bRayEndIsIntersection, true, g.GetAxisAlignedBoundingBox(out offsetHeight), false); | 817 | BypassRayCast, bRayEndIsIntersection, true, g.GetAxisAlignedBoundingBox(out offsetHeight), false); |
817 | pos.Z += offsetHeight; | 818 | pos.Z += offsetHeight; |
819 | rez_pos = pos; | ||
818 | } | 820 | } |
819 | else | 821 | else |
820 | { | 822 | { |
@@ -829,6 +831,8 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
829 | BypassRayCast, bRayEndIsIntersection, true, | 831 | BypassRayCast, bRayEndIsIntersection, true, |
830 | bbox, false); | 832 | bbox, false); |
831 | 833 | ||
834 | rez_pos = pos; | ||
835 | |||
832 | pos -= bbox / 2; | 836 | pos -= bbox / 2; |
833 | 837 | ||
834 | XmlNodeList groups = e.SelectNodes("SceneObjectGroup"); | 838 | XmlNodeList groups = e.SelectNodes("SceneObjectGroup"); |
@@ -865,7 +869,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
865 | primcount += g.PrimCount; | 869 | primcount += g.PrimCount; |
866 | 870 | ||
867 | if (!m_Scene.Permissions.CanRezObject( | 871 | if (!m_Scene.Permissions.CanRezObject( |
868 | primcount, remoteClient.AgentId, pos) | 872 | primcount, remoteClient.AgentId, rez_pos) |
869 | && !attachment) | 873 | && !attachment) |
870 | { | 874 | { |
871 | // The client operates in no fail mode. It will | 875 | // The client operates in no fail mode. It will |
@@ -882,7 +886,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
882 | return null; | 886 | return null; |
883 | } | 887 | } |
884 | 888 | ||
885 | if (item != null && !DoPreRezWhenFromItem(remoteClient, item, objlist, pos, veclist, attachment)) | 889 | if (item != null && !DoPreRezWhenFromItem(remoteClient, item, objlist, rez_pos, veclist, attachment)) |
886 | return null; | 890 | return null; |
887 | 891 | ||
888 | for (int i = 0; i < objlist.Count; i++) | 892 | for (int i = 0; i < objlist.Count; i++) |