viewers group search page size is 100 ( and not way to detect other value, so hardwired)
parent
5bbaea50e4
commit
6d1ad6acd5
|
@ -193,7 +193,7 @@ namespace OpenSim.Region.CoreModules.Framework.Search
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// filter out groups with no members
|
// filter out groups
|
||||||
DirGroupsReplyData[] result = new DirGroupsReplyData[answer.Count];
|
DirGroupsReplyData[] result = new DirGroupsReplyData[answer.Count];
|
||||||
int count = 0;
|
int count = 0;
|
||||||
foreach(DirGroupsReplyData dgrd in answer)
|
foreach(DirGroupsReplyData dgrd in answer)
|
||||||
|
@ -207,10 +207,18 @@ namespace OpenSim.Region.CoreModules.Framework.Search
|
||||||
if ((queryStart > 0) && (queryStart < count))
|
if ((queryStart > 0) && (queryStart < count))
|
||||||
{
|
{
|
||||||
int len = count - queryStart;
|
int len = count - queryStart;
|
||||||
|
if (len > 101) // a viewer page is 100
|
||||||
|
len = 101;
|
||||||
DirGroupsReplyData[] tmp = new DirGroupsReplyData[len];
|
DirGroupsReplyData[] tmp = new DirGroupsReplyData[len];
|
||||||
Array.Copy(result, queryStart, tmp, 0, len);
|
Array.Copy(result, queryStart, tmp, 0, len);
|
||||||
result = tmp;
|
result = tmp;
|
||||||
}
|
}
|
||||||
|
else if (count > 101)
|
||||||
|
{
|
||||||
|
DirGroupsReplyData[] tmp = new DirGroupsReplyData[101];
|
||||||
|
Array.Copy(result, 0, tmp, 0, 101);
|
||||||
|
result = tmp;
|
||||||
|
}
|
||||||
|
|
||||||
// TODO: This currently ignores pretty much all the query flags including Mature and sort order
|
// TODO: This currently ignores pretty much all the query flags including Mature and sort order
|
||||||
remoteClient.SendDirGroupsReply(queryID, result);
|
remoteClient.SendDirGroupsReply(queryID, result);
|
||||||
|
|
Loading…
Reference in New Issue