send DisableSimulator messages on closing childagents. Possible still not on at best timming, or on the right source files
parent
6bc479fecd
commit
6ae7341e42
|
@ -1112,7 +1112,9 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
|||
// This sleep can be increased if necessary. However, whilst it's active,
|
||||
// an agent cannot teleport back to this region if it has teleported away.
|
||||
Thread.Sleep(2000);
|
||||
|
||||
if (m_eqModule != null)
|
||||
m_eqModule.DisableSimulator(sp.RegionHandle,sp.UUID);
|
||||
Thread.Sleep(500);
|
||||
sp.Scene.CloseAgent(sp.UUID, false);
|
||||
}
|
||||
}
|
||||
|
@ -1256,8 +1258,12 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
|||
// BEFORE THEY SETTLE IN THE NEW REGION.
|
||||
// DECREASING THE WAIT TIME HERE WILL EITHER RESULT IN A VIEWER CRASH OR
|
||||
// IN THE AVIE BEING PLACED IN INFINITY FOR A COUPLE OF SECONDS.
|
||||
Thread.Sleep(15000);
|
||||
|
||||
|
||||
Thread.Sleep(14000);
|
||||
if (m_eqModule != null)
|
||||
m_eqModule.DisableSimulator(sp.RegionHandle,sp.UUID);
|
||||
Thread.Sleep(1000);
|
||||
|
||||
// OK, it got this agent. Let's close everything
|
||||
// If we shouldn't close the agent due to some other region renewing the connection
|
||||
// then this will be handled in IncomingCloseAgent under lock conditions
|
||||
|
|
|
@ -4076,6 +4076,9 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
uint x, y;
|
||||
spRegionSizeInfo regInfo;
|
||||
|
||||
// this should not be here
|
||||
IEventQueue eventQueue = Scene.RequestModuleInterface<IEventQueue>();
|
||||
|
||||
foreach (ulong handle in knownRegions)
|
||||
{
|
||||
// Don't close the agent on this region yet
|
||||
|
@ -4095,6 +4098,9 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
regInfo.sizeX, regInfo.sizeY, newRegionSizeX, newRegionSizeY))
|
||||
{
|
||||
byebyeRegions.Add(handle);
|
||||
// this should not be here
|
||||
if(eventQueue != null)
|
||||
eventQueue.DisableSimulator(handle,UUID);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -4103,6 +4109,9 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
(int)Constants.RegionSize, (int)Constants.RegionSize, newRegionSizeX, newRegionSizeY))
|
||||
{
|
||||
byebyeRegions.Add(handle);
|
||||
// this should not be here
|
||||
if(eventQueue != null)
|
||||
eventQueue.DisableSimulator(handle,UUID);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue