diff options
-rw-r--r-- | OpenSim/Client/MXP/ClientStack/MXPClientView.cs | 2 | ||||
-rw-r--r-- | OpenSim/Framework/IClientAPI.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/LandObject.cs | 5 | ||||
-rw-r--r-- | OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs | 2 | ||||
-rw-r--r-- | OpenSim/Tests/Common/Mock/TestClient.cs | 2 |
7 files changed, 11 insertions, 8 deletions
diff --git a/OpenSim/Client/MXP/ClientStack/MXPClientView.cs b/OpenSim/Client/MXP/ClientStack/MXPClientView.cs index 96e382c..f42b842 100644 --- a/OpenSim/Client/MXP/ClientStack/MXPClientView.cs +++ b/OpenSim/Client/MXP/ClientStack/MXPClientView.cs | |||
@@ -1228,7 +1228,7 @@ namespace OpenSim.Client.MXP.ClientStack | |||
1228 | // Need to translate to MXP somehow | 1228 | // Need to translate to MXP somehow |
1229 | } | 1229 | } |
1230 | 1230 | ||
1231 | public void SendLandObjectOwners(LandData land, Dictionary<UUID, int> ownersAndCount) | 1231 | public void SendLandObjectOwners(LandData land, List<UUID> groups, Dictionary<UUID, int> ownersAndCount) |
1232 | { | 1232 | { |
1233 | // Need to translate to MXP somehow | 1233 | // Need to translate to MXP somehow |
1234 | } | 1234 | } |
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs index b4c3796..da87183 100644 --- a/OpenSim/Framework/IClientAPI.cs +++ b/OpenSim/Framework/IClientAPI.cs | |||
@@ -996,7 +996,7 @@ namespace OpenSim.Framework | |||
996 | 996 | ||
997 | void SendLandAccessListData(List<UUID> avatars, uint accessFlag, int localLandID); | 997 | void SendLandAccessListData(List<UUID> avatars, uint accessFlag, int localLandID); |
998 | void SendForceClientSelectObjects(List<uint> objectIDs); | 998 | void SendForceClientSelectObjects(List<uint> objectIDs); |
999 | void SendLandObjectOwners(LandData land, Dictionary<UUID, int> ownersAndCount); | 999 | void SendLandObjectOwners(LandData land, List<UUID> groups, Dictionary<UUID, int> ownersAndCount); |
1000 | void SendLandParcelOverlay(byte[] data, int sequence_id); | 1000 | void SendLandParcelOverlay(byte[] data, int sequence_id); |
1001 | 1001 | ||
1002 | #region Parcel Methods | 1002 | #region Parcel Methods |
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 2c57303..ab1816f 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -3420,7 +3420,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3420 | } | 3420 | } |
3421 | } | 3421 | } |
3422 | 3422 | ||
3423 | public void SendLandObjectOwners(LandData land, Dictionary<UUID, int> ownersAndCount) | 3423 | public void SendLandObjectOwners(LandData land, List<UUID> groups, Dictionary<UUID, int> ownersAndCount) |
3424 | { | 3424 | { |
3425 | int notifyCount = ownersAndCount.Count; | 3425 | int notifyCount = ownersAndCount.Count; |
3426 | ParcelObjectOwnersReplyPacket pack = (ParcelObjectOwnersReplyPacket)PacketPool.Instance.GetPacket(PacketType.ParcelObjectOwnersReply); | 3426 | ParcelObjectOwnersReplyPacket pack = (ParcelObjectOwnersReplyPacket)PacketPool.Instance.GetPacket(PacketType.ParcelObjectOwnersReply); |
@@ -3445,7 +3445,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3445 | dataBlock[num] = new ParcelObjectOwnersReplyPacket.DataBlock(); | 3445 | dataBlock[num] = new ParcelObjectOwnersReplyPacket.DataBlock(); |
3446 | dataBlock[num].Count = ownersAndCount[owner]; | 3446 | dataBlock[num].Count = ownersAndCount[owner]; |
3447 | 3447 | ||
3448 | if (land.GroupID == owner) | 3448 | if (land.GroupID == owner || groups.Contains(owner)) |
3449 | dataBlock[num].IsGroupOwned = true; | 3449 | dataBlock[num].IsGroupOwned = true; |
3450 | 3450 | ||
3451 | dataBlock[num].OnlineStatus = true; //TODO: fix me later | 3451 | dataBlock[num].OnlineStatus = true; //TODO: fix me later |
diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs index a19b454..2cf739b 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs | |||
@@ -699,6 +699,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
699 | if (m_scene.Permissions.CanEditParcel(remote_client.AgentId, this)) | 699 | if (m_scene.Permissions.CanEditParcel(remote_client.AgentId, this)) |
700 | { | 700 | { |
701 | Dictionary<UUID, int> primCount = new Dictionary<UUID, int>(); | 701 | Dictionary<UUID, int> primCount = new Dictionary<UUID, int>(); |
702 | List<UUID> groups = new List<UUID>(); | ||
702 | 703 | ||
703 | lock (primsOverMe) | 704 | lock (primsOverMe) |
704 | { | 705 | { |
@@ -726,6 +727,8 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
726 | { | 727 | { |
727 | m_log.Error("[LAND]: Unable to match a prim with it's owner."); | 728 | m_log.Error("[LAND]: Unable to match a prim with it's owner."); |
728 | } | 729 | } |
730 | if (obj.OwnerID == obj.GroupID && (!groups.Contains(obj.OwnerID))) | ||
731 | groups.Add(obj.OwnerID); | ||
729 | } | 732 | } |
730 | } | 733 | } |
731 | catch (InvalidOperationException) | 734 | catch (InvalidOperationException) |
@@ -734,7 +737,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
734 | } | 737 | } |
735 | } | 738 | } |
736 | 739 | ||
737 | remote_client.SendLandObjectOwners(landData, primCount); | 740 | remote_client.SendLandObjectOwners(landData, groups, primCount); |
738 | } | 741 | } |
739 | } | 742 | } |
740 | 743 | ||
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs index 3c41c02..34d2ca7 100644 --- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs +++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs | |||
@@ -885,7 +885,7 @@ namespace OpenSim.Region.Examples.SimpleModule | |||
885 | { | 885 | { |
886 | } | 886 | } |
887 | 887 | ||
888 | public void SendLandObjectOwners(LandData land, Dictionary<UUID, int> ownersAndCount) | 888 | public void SendLandObjectOwners(LandData land, List<UUID> groups, Dictionary<UUID, int> ownersAndCount) |
889 | { | 889 | { |
890 | } | 890 | } |
891 | 891 | ||
diff --git a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs index 9f8fbb3..c721790 100644 --- a/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs +++ b/OpenSim/Region/OptionalModules/World/NPC/NPCAvatar.cs | |||
@@ -892,7 +892,7 @@ namespace OpenSim.Region.OptionalModules.World.NPC | |||
892 | public void SendForceClientSelectObjects(List<uint> objectIDs) | 892 | public void SendForceClientSelectObjects(List<uint> objectIDs) |
893 | { | 893 | { |
894 | } | 894 | } |
895 | public void SendLandObjectOwners(LandData land, Dictionary<UUID, int> ownersAndCount) | 895 | public void SendLandObjectOwners(LandData land, List<UUID> groups, Dictionary<UUID, int> ownersAndCount) |
896 | { | 896 | { |
897 | } | 897 | } |
898 | public void SendLandParcelOverlay(byte[] data, int sequence_id) | 898 | public void SendLandParcelOverlay(byte[] data, int sequence_id) |
diff --git a/OpenSim/Tests/Common/Mock/TestClient.cs b/OpenSim/Tests/Common/Mock/TestClient.cs index ff2e3ca..1efc3fd 100644 --- a/OpenSim/Tests/Common/Mock/TestClient.cs +++ b/OpenSim/Tests/Common/Mock/TestClient.cs | |||
@@ -929,7 +929,7 @@ namespace OpenSim.Tests.Common.Mock | |||
929 | { | 929 | { |
930 | } | 930 | } |
931 | 931 | ||
932 | public void SendLandObjectOwners(LandData land, Dictionary<UUID, int> ownersAndCount) | 932 | public void SendLandObjectOwners(LandData land, List<UUID> groups, Dictionary<UUID, int> ownersAndCount) |
933 | { | 933 | { |
934 | } | 934 | } |
935 | 935 | ||