diff --git a/OpenSim/Framework/GridInstantMessage.cs b/OpenSim/Framework/GridInstantMessage.cs index 4ca4e67435..9cecf42322 100644 --- a/OpenSim/Framework/GridInstantMessage.cs +++ b/OpenSim/Framework/GridInstantMessage.cs @@ -75,9 +75,12 @@ namespace OpenSim.Framework offline = 0; Position = _position; binaryBucket = _binaryBucket; - - ParentEstateID = scene.RegionInfo.EstateSettings.ParentEstateID; - RegionID = scene.RegionInfo.RegionSettings.RegionUUID.Guid; + + if (scene != null) + { + ParentEstateID = scene.RegionInfo.EstateSettings.ParentEstateID; + RegionID = scene.RegionInfo.RegionSettings.RegionUUID.Guid; + } timestamp = (uint)Util.UnixTimeSinceEpoch(); } diff --git a/OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs b/OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs index 1b7eb97eb5..339f1f929f 100644 --- a/OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs +++ b/OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs @@ -127,7 +127,8 @@ namespace OpenSim.Region.Environment.Modules.Avatar.InstantMessage return; } - GridInstantMessage im = new GridInstantMessage(client.Scene, + IScene scene = client == null ? null : client.Scene; + GridInstantMessage im = new GridInstantMessage(scene, fromAgentID, fromAgentName, fromAgentSession, toAgentID, dialog, fromGroup, message, imSessionID, offline != 0 ? true : false, Position,