* revert r7724 so that PresenceChildStatus() starts throwing NRE's again

* apparantly logout code relies on this happening in certain circumstances.  Really, the root issue needs to be investigated.
0.6.1-post-fixes
Justin Clarke Casey 2008-12-17 19:12:56 +00:00
parent 7ef5a79fef
commit 2108d328df
3 changed files with 12 additions and 4 deletions

View File

@ -80,7 +80,10 @@ namespace OpenSim.Framework
/// Used by ClientView when a 'kick everyone' or 'estate message' occurs
///
/// <param name="avatarID">AvatarID to lookup</param>
/// <returns>true if the presence is a child agent, false if the presence does not exist or is not a child agent</returns>
/// <returns>true if the presence is a child agent, false if the presence is a root exception</returns>
/// <exception cref="System.NullReferenceException">
/// Thrown if the agent does not exist.
/// </exception>
bool PresenceChildStatus(UUID agentId);
// Diva: get this out of here!!!

View File

@ -333,6 +333,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
if (m_groupPowers.ContainsKey(groupID))
return m_groupPowers[groupID];
return 0;
}

View File

@ -4133,10 +4133,14 @@ namespace OpenSim.Region.Environment.Scenes
{
ScenePresence cp = GetScenePresence(avatarID);
if (cp != null)
return cp.IsChildAgent;
// FIXME: This is really crap - some logout code is relying on a NullReferenceException to halt its processing
// This needs to be fixed properly by cleaning up the logout code.
//if (cp != null)
// return cp.IsChildAgent;
return false;
//return false;
return cp.IsChildAgent;
}
/// <summary>