mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 17:05:55 +08:00
Fix an error in group membership sending when the memebr count exceeds 60
Also reduce limit to 40 to allow for last logon dates and titles
This commit is contained in:
@@ -8660,6 +8660,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
|
||||
while (true)
|
||||
{
|
||||
int blockCount = members.Count;
|
||||
if (blockCount > 40)
|
||||
blockCount = 40;
|
||||
|
||||
GroupMembersReplyPacket groupMembersReply = (GroupMembersReplyPacket)PacketPool.Instance.GetPacket(PacketType.GroupMembersReply);
|
||||
|
||||
groupMembersReply.AgentData =
|
||||
@@ -8668,7 +8672,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
new GroupMembersReplyPacket.GroupDataBlock();
|
||||
groupMembersReply.MemberData =
|
||||
new GroupMembersReplyPacket.MemberDataBlock[
|
||||
members.Count];
|
||||
blockCount];
|
||||
|
||||
groupMembersReply.AgentData.AgentID = AgentId;
|
||||
groupMembersReply.GroupData.GroupID =
|
||||
@@ -8677,7 +8681,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
groupMembersRequestPacket.GroupData.RequestID;
|
||||
groupMembersReply.GroupData.MemberCount = members.Count;
|
||||
|
||||
for (int i = 0 ; i < 60 && members.Count > 0 ; i++)
|
||||
for (int i = 0 ; i < blockCount ; i++)
|
||||
{
|
||||
GroupMembersData m = members[0];
|
||||
members.RemoveAt(0);
|
||||
|
||||
Reference in New Issue
Block a user