diff --git a/OpenSim/Framework/IScene.cs b/OpenSim/Framework/IScene.cs
index 63bf7ac702..6a6fdf15ed 100644
--- a/OpenSim/Framework/IScene.cs
+++ b/OpenSim/Framework/IScene.cs
@@ -72,7 +72,15 @@ namespace OpenSim.Framework
string GetSimulatorVersion();
- bool PresenceChildStatus(UUID avatarID);
+ ///
+ /// Is the agent denoted by the given agentID a child presence in this scene?
+ ///
+ ///
+ /// Used by ClientView when a 'kick everyone' or 'estate message' occurs
+ ///
+ /// AvatarID to lookup
+ /// true if the presence is a child agent, false if the presence does not exist or is not a child agent
+ bool PresenceChildStatus(UUID agentId);
// Diva: get this out of here!!!
string GetCapsPath(UUID agentId);
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 9497043cf8..873662e4e2 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -4130,15 +4130,14 @@ namespace OpenSim.Region.Environment.Scenes
return m_sceneGraph.GetScenePresence(avatarID);
}
- ///
- /// Request an Avatar's Child Status - used by ClientView when a 'kick everyone' or 'estate message' occurs
- ///
- /// AvatarID to lookup
- ///
public override bool PresenceChildStatus(UUID avatarID)
{
ScenePresence cp = GetScenePresence(avatarID);
- return cp.IsChildAgent;
+
+ if (cp != null)
+ return cp.IsChildAgent;
+
+ return false;
}
///