From 8b952b7a3bbed1578740e56239687fab7ea899b1 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Mon, 9 Nov 2020 23:03:28 +0000 Subject: [PATCH] mantis 8798: avoid null ref --- OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs b/OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs index 8c09d1fe84..eb78fb807c 100644 --- a/OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs @@ -217,7 +217,6 @@ namespace OpenSim.Region.CoreModules.Avatar.Chat Scene scene = c.Scene as Scene; UUID destination = c.Destination; Vector3 fromPos = c.Position; - Vector3 regionPos = new Vector3(scene.RegionInfo.WorldLocX, scene.RegionInfo.WorldLocY, 0); bool checkParcelHide = false; UUID sourceParcelID = UUID.Zero; @@ -236,6 +235,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Chat { case ChatSourceType.Agent: ScenePresence avatar = (scene as Scene).GetScenePresence(c.Sender.AgentId); + if(avatar == null) + return; fromPos = avatar.AbsolutePosition; fromName = avatar.Name; fromID = c.Sender.AgentId; @@ -293,6 +294,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Chat } } + Vector3 regionPos = new Vector3(scene.RegionInfo.WorldLocX, scene.RegionInfo.WorldLocY, 0); scene.ForEachScenePresence( delegate(ScenePresence presence) {