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 parcel = UUID.Zero;
|
||||||
UUID.TryParse(id, out parcel);
|
UUID.TryParse(id, out parcel);
|
||||||
|
|
||||||
// assume we've got the parcelID we just computed in RemoteParcelRequest
|
// assume we've got the parcelID we just computed in RemoteParcelRequest
|
||||||
ExtendedLandData extLandData = new ExtendedLandData();
|
ExtendedLandData extLandData = new ExtendedLandData();
|
||||||
if(!Util.ParseFakeParcelID(parcel, out extLandData.RegionHandle,
|
if(!Util.ParseFakeParcelID(parcel, out extLandData.RegionHandle,
|
||||||
out extLandData.X, out extLandData.Y))
|
out extLandData.X, out extLandData.Y))
|
||||||
return null;
|
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);
|
extLandData.RegionHandle, extLandData.X, extLandData.Y);
|
||||||
|
|
||||||
// for this region or for somewhere else?
|
// for this region or for somewhere else?
|
||||||
if (extLandData.RegionHandle == m_scene.RegionInfo.RegionHandle)
|
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;
|
extLandData.RegionAccess = m_scene.RegionInfo.AccessLevel;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in New Issue