aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJustin Clarke Casey2008-12-15 18:11:47 +0000
committerJustin Clarke Casey2008-12-15 18:11:47 +0000
commit2e288fade12aba07456550fb215a53ec4a630599 (patch)
tree9d9a71611309fd2cba1efc91ec500df09f25a05b
parentBug fix in new child agents management. Thanks DigiDaz for helping identify t... (diff)
downloadopensim-SC_OLD-2e288fade12aba07456550fb215a53ec4a630599.zip
opensim-SC_OLD-2e288fade12aba07456550fb215a53ec4a630599.tar.gz
opensim-SC_OLD-2e288fade12aba07456550fb215a53ec4a630599.tar.bz2
opensim-SC_OLD-2e288fade12aba07456550fb215a53ec4a630599.tar.xz
* minor: Stop presence child status suffering an NRE if the agent uuid given is not represent at all
-rw-r--r--OpenSim/Framework/IScene.cs10
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs11
2 files changed, 14 insertions, 7 deletions
diff --git a/OpenSim/Framework/IScene.cs b/OpenSim/Framework/IScene.cs
index 63bf7ac..6a6fdf1 100644
--- a/OpenSim/Framework/IScene.cs
+++ b/OpenSim/Framework/IScene.cs
@@ -72,7 +72,15 @@ namespace OpenSim.Framework
72 72
73 string GetSimulatorVersion(); 73 string GetSimulatorVersion();
74 74
75 bool PresenceChildStatus(UUID avatarID); 75 /// <summary>
76 /// Is the agent denoted by the given agentID a child presence in this scene?
77 /// </summary>
78 ///
79 /// Used by ClientView when a 'kick everyone' or 'estate message' occurs
80 ///
81 /// <param name="avatarID">AvatarID to lookup</param>
82 /// <returns>true if the presence is a child agent, false if the presence does not exist or is not a child agent</returns>
83 bool PresenceChildStatus(UUID agentId);
76 84
77 // Diva: get this out of here!!! 85 // Diva: get this out of here!!!
78 string GetCapsPath(UUID agentId); 86 string GetCapsPath(UUID agentId);
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 9497043..873662e 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -4130,15 +4130,14 @@ namespace OpenSim.Region.Environment.Scenes
4130 return m_sceneGraph.GetScenePresence(avatarID); 4130 return m_sceneGraph.GetScenePresence(avatarID);
4131 } 4131 }
4132 4132
4133 /// <summary>
4134 /// Request an Avatar's Child Status - used by ClientView when a 'kick everyone' or 'estate message' occurs
4135 /// </summary>
4136 /// <param name="avatarID">AvatarID to lookup</param>
4137 /// <returns></returns>
4138 public override bool PresenceChildStatus(UUID avatarID) 4133 public override bool PresenceChildStatus(UUID avatarID)
4139 { 4134 {
4140 ScenePresence cp = GetScenePresence(avatarID); 4135 ScenePresence cp = GetScenePresence(avatarID);
4141 return cp.IsChildAgent; 4136
4137 if (cp != null)
4138 return cp.IsChildAgent;
4139
4140 return false;
4142 } 4141 }
4143 4142
4144 /// <summary> 4143 /// <summary>