Revert last commit
parent
e4406c846d
commit
8f45eb913c
|
@ -424,34 +424,37 @@ namespace OpenSim.Region.CoreModules.World.Land
|
||||||
{
|
{
|
||||||
if (LandData.GroupID != UUID.Zero && (LandData.Flags & (uint)ParcelFlags.UseAccessGroup) == (uint)ParcelFlags.UseAccessGroup)
|
if (LandData.GroupID != UUID.Zero && (LandData.Flags & (uint)ParcelFlags.UseAccessGroup) == (uint)ParcelFlags.UseAccessGroup)
|
||||||
{
|
{
|
||||||
bool isMember;
|
ScenePresence sp;
|
||||||
if (m_groupMemberCache.TryGetValue(avatar, out isMember))
|
if (!m_scene.TryGetScenePresence(avatar, out sp))
|
||||||
return isMember;
|
|
||||||
|
|
||||||
IGroupsModule groupsModule = m_scene.RequestModuleInterface<IGroupsModule>();
|
|
||||||
if (groupsModule == null)
|
|
||||||
{
|
{
|
||||||
m_groupMemberCache.Add(avatar, false, m_groupMemberCacheTimeout);
|
bool isMember;
|
||||||
return false;
|
if (m_groupMemberCache.TryGetValue(avatar, out isMember))
|
||||||
}
|
return isMember;
|
||||||
|
|
||||||
GroupMembershipData[] membership = groupsModule.GetMembershipData(avatar);
|
IGroupsModule groupsModule = m_scene.RequestModuleInterface<IGroupsModule>();
|
||||||
if (membership == null || membership.Length == 0)
|
if (groupsModule == null)
|
||||||
{
|
return false;
|
||||||
m_groupMemberCache.Add(avatar, false, m_groupMemberCacheTimeout);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (GroupMembershipData d in membership)
|
GroupMembershipData[] membership = groupsModule.GetMembershipData(avatar);
|
||||||
{
|
if (membership == null || membership.Length == 0)
|
||||||
if (d.GroupID == LandData.GroupID)
|
|
||||||
{
|
{
|
||||||
m_groupMemberCache.Add(avatar, true, m_groupMemberCacheTimeout);
|
m_groupMemberCache.Add(avatar, false, m_groupMemberCacheTimeout);
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
foreach (GroupMembershipData d in membership)
|
||||||
|
{
|
||||||
|
if (d.GroupID == LandData.GroupID)
|
||||||
|
{
|
||||||
|
m_groupMemberCache.Add(avatar, true, m_groupMemberCacheTimeout);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
m_groupMemberCache.Add(avatar, false, m_groupMemberCacheTimeout);
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
m_groupMemberCache.Add(avatar, false, m_groupMemberCacheTimeout);
|
|
||||||
return false;
|
return sp.ControllingClient.IsGroupMember(LandData.GroupID);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue