* Turned all instances of ForEach loops in ClientManager into Local Arrays.

* Added Locking while the Copy is taking place.
* Added an error message to describe what's actually happening.
This commit is contained in:
Teravus Ovares
2007-12-17 20:24:49 +00:00
parent f9540e3f11
commit adf7afb606
3 changed files with 65 additions and 19 deletions

View File

@@ -209,8 +209,8 @@ namespace OpenSim.Region.ClientStack
m_scene.RemoveClient(AgentId);
// Send the STOP packet
libsecondlife.Packets.DisableSimulatorPacket disable = new libsecondlife.Packets.DisableSimulatorPacket();
OutPacket(disable, ThrottleOutPacketType.Task);
//libsecondlife.Packets.DisableSimulatorPacket disable = new libsecondlife.Packets.DisableSimulatorPacket();
//OutPacket(disable, ThrottleOutPacketType.Task);
// FLUSH Packets
m_packetQueue.Close();

View File

@@ -459,6 +459,7 @@ namespace OpenSim.Region.Environment.Scenes
// This is the method that shuts down the scene.
public override void Close()
{
MainLog.Instance.Warn("SCENE", "Closing down the single simulator: " + RegionInfo.RegionName);
// Kick all ROOT agents with the message, 'The simulator is going down'
ForEachScenePresence(delegate(ScenePresence avatar)
{