* 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 /// Used by ClientView when a 'kick everyone' or 'estate message' occurs
/// ///
/// <param name="avatarID">AvatarID to lookup</param> /// <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); bool PresenceChildStatus(UUID agentId);
// Diva: get this out of here!!! // Diva: get this out of here!!!

View File

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

View File

@ -4133,10 +4133,14 @@ namespace OpenSim.Region.Environment.Scenes
{ {
ScenePresence cp = GetScenePresence(avatarID); ScenePresence cp = GetScenePresence(avatarID);
if (cp != null) // FIXME: This is really crap - some logout code is relying on a NullReferenceException to halt its processing
return cp.IsChildAgent; // 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> /// <summary>