mirror of
https://github.com/opensim/opensim.git
synced 2026-08-06 01:06:30 +08:00
If GridService.GetNeighbours() could not find the region then log a warning rather than causing a null reference on the normal log line
This also extends the TestChildAgentEstablished() test to actually activate the EntityTransferModule, though the test is not yet viable
This commit is contained in:
@@ -201,15 +201,18 @@ namespace OpenSim.Region.Framework.Scenes.Tests
|
||||
public void TestChildAgentEstablished()
|
||||
{
|
||||
TestHelper.InMethod();
|
||||
log4net.Config.XmlConfigurator.Configure();
|
||||
// log4net.Config.XmlConfigurator.Configure();
|
||||
|
||||
UUID agent1Id = UUID.Parse("00000000-0000-0000-0000-000000000001");
|
||||
|
||||
TestScene myScene1 = SceneSetupHelpers.SetupScene("Neighbour y", UUID.Random(), 1000, 1000);
|
||||
TestScene myScene2 = SceneSetupHelpers.SetupScene("Neighbour y + 1", UUID.Random(), 1001, 1000);
|
||||
|
||||
IConfigSource configSource = new IniConfigSource();
|
||||
configSource.AddConfig("Modules").Set("EntityTransferModule", "BasicEntityTransferModule");
|
||||
EntityTransferModule etm = new EntityTransferModule();
|
||||
SceneSetupHelpers.SetupSceneModules(myScene1, etm);
|
||||
|
||||
SceneSetupHelpers.SetupSceneModules(myScene1, configSource, etm);
|
||||
|
||||
SceneSetupHelpers.AddRootAgent(myScene1, agent1Id);
|
||||
ScenePresence childPresence = myScene2.GetScenePresence(agent1);
|
||||
|
||||
@@ -271,6 +271,7 @@ namespace OpenSim.Services.GridService
|
||||
{
|
||||
List<GridRegion> rinfos = new List<GridRegion>();
|
||||
RegionData region = m_Database.Get(regionID, scopeID);
|
||||
|
||||
if (region != null)
|
||||
{
|
||||
// Not really? Maybe?
|
||||
@@ -278,15 +279,24 @@ namespace OpenSim.Services.GridService
|
||||
region.posX + (int)Constants.RegionSize + 1, region.posY + (int)Constants.RegionSize + 1, scopeID);
|
||||
|
||||
foreach (RegionData rdata in rdatas)
|
||||
{
|
||||
if (rdata.RegionID != regionID)
|
||||
{
|
||||
int flags = Convert.ToInt32(rdata.Data["flags"]);
|
||||
if ((flags & (int)Data.RegionFlags.Hyperlink) == 0) // no hyperlinks as neighbours
|
||||
rinfos.Add(RegionData2RegionInfo(rdata));
|
||||
}
|
||||
}
|
||||
|
||||
m_log.DebugFormat("[GRID SERVICE]: region {0} has {1} neighbours", region.RegionName, rinfos.Count);
|
||||
}
|
||||
m_log.DebugFormat("[GRID SERVICE]: region {0} has {1} neighbours", region.RegionName, rinfos.Count);
|
||||
else
|
||||
{
|
||||
m_log.WarnFormat(
|
||||
"[GRID SERVICE]: GetNeighbours() called for scope {0}, region {1} but no such region found",
|
||||
scopeID, regionID);
|
||||
}
|
||||
|
||||
return rinfos;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user