mantis 8321: avoid null reference potencial caused by outdated LMs for example
parent
4958425e37
commit
44fd5bb7b5
|
@ -2036,18 +2036,25 @@ namespace OpenSim.Region.CoreModules.World.Land
|
|||
{
|
||||
UUID parcel = UUID.Zero;
|
||||
UUID.TryParse(id, out parcel);
|
||||
|
||||
// assume we've got the parcelID we just computed in RemoteParcelRequest
|
||||
ExtendedLandData extLandData = new ExtendedLandData();
|
||||
if(!Util.ParseFakeParcelID(parcel, out extLandData.RegionHandle,
|
||||
out extLandData.X, out extLandData.Y))
|
||||
return null;
|
||||
m_log.DebugFormat("[LAND MANAGEMENT MODULE]: Got parcelinfo request for regionHandle {0}, x/y {1}/{2}",
|
||||
m_log.DebugFormat("[LAND MANAGEMENT MODULE] : Got parcelinfo request for regionHandle {0}, x/y {1}/{2}",
|
||||
extLandData.RegionHandle, extLandData.X, extLandData.Y);
|
||||
|
||||
// for this region or for somewhere else?
|
||||
if (extLandData.RegionHandle == m_scene.RegionInfo.RegionHandle)
|
||||
{
|
||||
extLandData.LandData = this.GetLandObject(extLandData.X, extLandData.Y).LandData;
|
||||
ILandObject extLandObject = this.GetLandObject(extLandData.X, extLandData.Y);
|
||||
if(extLandObject == null)
|
||||
{
|
||||
m_log.DebugFormat("[LAND MANAGEMENT MODULE]: ParcelInfoRequest: a FakeParcelID points to outside the region");
|
||||
return null;
|
||||
}
|
||||
extLandData.LandData = extLandObject.LandData;
|
||||
extLandData.RegionAccess = m_scene.RegionInfo.AccessLevel;
|
||||
}
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue