aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
authordahlia2013-01-10 20:21:18 -0800
committerJustin Clark-Casey (justincc)2013-01-25 23:50:48 +0000
commitaf27180131594949b77129cac53e34e0506aa4eb (patch)
treec85854f8b055563e8f6c0dbaa4d696d256947523 /OpenSim/Region/ClientStack
parentFix a regression in the last few scene commands changes where setting these v... (diff)
downloadopensim-SC_OLD-af27180131594949b77129cac53e34e0506aa4eb.zip
opensim-SC_OLD-af27180131594949b77129cac53e34e0506aa4eb.tar.gz
opensim-SC_OLD-af27180131594949b77129cac53e34e0506aa4eb.tar.bz2
opensim-SC_OLD-af27180131594949b77129cac53e34e0506aa4eb.tar.xz
add some sanity checking to HandleAgentRequestSit handler
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs14
1 files changed, 12 insertions, 2 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 504df40..a8517e6 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -6428,8 +6428,18 @@ namespace OpenSim.Region.ClientStack.LindenUDP
6428 6428
6429 AgentRequestSit handlerAgentRequestSit = OnAgentRequestSit; 6429 AgentRequestSit handlerAgentRequestSit = OnAgentRequestSit;
6430 if (handlerAgentRequestSit != null) 6430 if (handlerAgentRequestSit != null)
6431 handlerAgentRequestSit(this, agentRequestSit.AgentData.AgentID, 6431 if (!(agentRequestSit.AgentData == null
6432 agentRequestSit.TargetObject.TargetID, agentRequestSit.TargetObject.Offset); 6432 || agentRequestSit.TargetObject == null
6433 || agentRequestSit.TargetObject.TargetID == null
6434 || agentRequestSit.TargetObject.Offset == null))
6435 {
6436 var sp = m_scene.GetScenePresence(agentRequestSit.AgentData.AgentID);
6437 if (sp == null || sp.ParentID != 0) // ignore packet if agent is already sitting
6438 return true;
6439
6440 handlerAgentRequestSit(this, agentRequestSit.AgentData.AgentID,
6441 agentRequestSit.TargetObject.TargetID, agentRequestSit.TargetObject.Offset);
6442 }
6433 } 6443 }
6434 return true; 6444 return true;
6435 } 6445 }