diff options
author | UbitUmarov | 2016-08-05 15:19:42 +0100 |
---|---|---|
committer | UbitUmarov | 2016-08-05 15:19:42 +0100 |
commit | 23578635df0c98f883f7be9b6e08a4fc1a7c834c (patch) | |
tree | 4d35657b01a00ce867c526157a3df592de4b7098 /OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |
parent | also use group provided by viewer on ObjectDuplicateOnRay (diff) | |
download | opensim-SC-23578635df0c98f883f7be9b6e08a4fc1a7c834c.zip opensim-SC-23578635df0c98f883f7be9b6e08a4fc1a7c834c.tar.gz opensim-SC-23578635df0c98f883f7be9b6e08a4fc1a7c834c.tar.bz2 opensim-SC-23578635df0c98f883f7be9b6e08a4fc1a7c834c.tar.xz |
more changes relative to incorrect use of activegroupid
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 36 |
1 files changed, 23 insertions, 13 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 088cd4c..e3b2fd1 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -5805,9 +5805,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
5805 | 5805 | ||
5806 | public ulong GetGroupPowers(UUID groupID) | 5806 | public ulong GetGroupPowers(UUID groupID) |
5807 | { | 5807 | { |
5808 | if (groupID == ActiveGroupId) | ||
5809 | return ActiveGroupPowers; | ||
5810 | |||
5811 | lock(m_groupPowers) | 5808 | lock(m_groupPowers) |
5812 | { | 5809 | { |
5813 | if (m_groupPowers.ContainsKey(groupID)) | 5810 | if (m_groupPowers.ContainsKey(groupID)) |
@@ -6729,11 +6726,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
6729 | RezObject handlerRezObject = OnRezObject; | 6726 | RezObject handlerRezObject = OnRezObject; |
6730 | if (handlerRezObject != null) | 6727 | if (handlerRezObject != null) |
6731 | { | 6728 | { |
6732 | handlerRezObject(this, rezPacket.InventoryData.ItemID, rezPacket.RezData.RayEnd, | 6729 | UUID rezGroupID = rezPacket.AgentData.GroupID; |
6733 | rezPacket.RezData.RayStart, rezPacket.RezData.RayTargetID, | 6730 | if(!IsGroupMember(rezGroupID)) |
6734 | rezPacket.RezData.BypassRaycast, rezPacket.RezData.RayEndIsIntersection, | 6731 | rezGroupID = UUID.Zero; |
6735 | rezPacket.RezData.RezSelected, rezPacket.RezData.RemoveItem, | 6732 | handlerRezObject(this, rezPacket.InventoryData.ItemID, rezGroupID, rezPacket.RezData.RayEnd, |
6736 | rezPacket.RezData.FromTaskID); | 6733 | rezPacket.RezData.RayStart, rezPacket.RezData.RayTargetID, |
6734 | rezPacket.RezData.BypassRaycast, rezPacket.RezData.RayEndIsIntersection, | ||
6735 | rezPacket.RezData.RezSelected, rezPacket.RezData.RemoveItem, | ||
6736 | rezPacket.RezData.FromTaskID); | ||
6737 | } | 6737 | } |
6738 | return true; | 6738 | return true; |
6739 | } | 6739 | } |
@@ -7644,9 +7644,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
7644 | handlerObjectDuplicate = OnObjectDuplicate; | 7644 | handlerObjectDuplicate = OnObjectDuplicate; |
7645 | if (handlerObjectDuplicate != null) | 7645 | if (handlerObjectDuplicate != null) |
7646 | { | 7646 | { |
7647 | UUID rezGroupID = dupe.AgentData.GroupID; | ||
7648 | if(!IsGroupMember(rezGroupID)) | ||
7649 | rezGroupID = UUID.Zero; | ||
7647 | handlerObjectDuplicate(dupe.ObjectData[i].ObjectLocalID, dupe.SharedData.Offset, | 7650 | handlerObjectDuplicate(dupe.ObjectData[i].ObjectLocalID, dupe.SharedData.Offset, |
7648 | dupe.SharedData.DuplicateFlags, AgentId, | 7651 | dupe.SharedData.DuplicateFlags, AgentId, |
7649 | dupe.AgentData.GroupID); | 7652 | rezGroupID); |
7650 | } | 7653 | } |
7651 | } | 7654 | } |
7652 | 7655 | ||
@@ -8266,10 +8269,17 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
8266 | handlerObjectDuplicateOnRay = OnObjectDuplicateOnRay; | 8269 | handlerObjectDuplicateOnRay = OnObjectDuplicateOnRay; |
8267 | if (handlerObjectDuplicateOnRay != null) | 8270 | if (handlerObjectDuplicateOnRay != null) |
8268 | { | 8271 | { |
8269 | handlerObjectDuplicateOnRay(dupeOnRay.ObjectData[i].ObjectLocalID, dupeOnRay.AgentData.DuplicateFlags, | 8272 | |
8270 | AgentId, dupeOnRay.AgentData.GroupID, dupeOnRay.AgentData.RayTargetID, dupeOnRay.AgentData.RayEnd, | 8273 | UUID rezGroupID = dupeOnRay.AgentData.GroupID; |
8271 | dupeOnRay.AgentData.RayStart, dupeOnRay.AgentData.BypassRaycast, dupeOnRay.AgentData.RayEndIsIntersection, | 8274 | if(!IsGroupMember(rezGroupID)) |
8272 | dupeOnRay.AgentData.CopyCenters, dupeOnRay.AgentData.CopyRotates); | 8275 | rezGroupID = UUID.Zero; |
8276 | |||
8277 | handlerObjectDuplicateOnRay(dupeOnRay.ObjectData[i].ObjectLocalID, | ||
8278 | dupeOnRay.AgentData.DuplicateFlags, AgentId, rezGroupID, | ||
8279 | dupeOnRay.AgentData.RayTargetID, dupeOnRay.AgentData.RayEnd, | ||
8280 | dupeOnRay.AgentData.RayStart, dupeOnRay.AgentData.BypassRaycast, | ||
8281 | dupeOnRay.AgentData.RayEndIsIntersection, | ||
8282 | dupeOnRay.AgentData.CopyCenters, dupeOnRay.AgentData.CopyRotates); | ||
8273 | } | 8283 | } |
8274 | } | 8284 | } |
8275 | 8285 | ||