mirror of
https://github.com/opensim/opensim.git
synced 2026-08-07 17:55:48 +08:00
* Start listening for client connections immediately after a region initializes during initial instance startup. (as opposed to waiting for 'all of the regions' to initialize first)
* Removed hackish timer based client notification about regions up (no longer needed) * Added a comment about an inventory based login failure that causes me lots of greif testing and debugging. Comment includes *why* it's failing.
This commit is contained in:
@@ -55,7 +55,14 @@ namespace OpenSim.Region.Environment.Modules
|
||||
byte[] visualParams;
|
||||
GetDefaultAvatarAppearance(out wearables, out visualParams);
|
||||
appearance = new AvatarAppearance(avatarId, wearables, visualParams);
|
||||
m_avatarsAppearance[avatarId] = appearance;
|
||||
try
|
||||
{
|
||||
m_avatarsAppearance[avatarId] = appearance;
|
||||
}
|
||||
catch (System.NullReferenceException)
|
||||
{
|
||||
OpenSim.Framework.Console.MainLog.Instance.Error("AVATAR", "Unable to load appearance for uninitialized avatar");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -313,17 +313,27 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
}
|
||||
if ((Math.Abs(otherRegion.RegionLocX - RegionInfo.RegionLocX) <= 1) && (Math.Abs(otherRegion.RegionLocY - RegionInfo.RegionLocY) <= 1))
|
||||
{
|
||||
lock (m_regionRestartNotifyList)
|
||||
try
|
||||
{
|
||||
if (!(m_regionRestartNotifyList.Contains(otherRegion)))
|
||||
{
|
||||
m_regionRestartNotifyList.Add(otherRegion);
|
||||
|
||||
m_restartWaitTimer.Interval = 50000;
|
||||
m_restartWaitTimer.AutoReset = false;
|
||||
m_restartWaitTimer.Elapsed += new ElapsedEventHandler(RestartNotifyWaitElapsed);
|
||||
m_restartWaitTimer.Start();
|
||||
ForEachScenePresence(delegate(ScenePresence agent)
|
||||
{
|
||||
// If agent is a root agent.
|
||||
if (!agent.IsChildAgent)
|
||||
{
|
||||
//agent.ControllingClient.new
|
||||
//this.CommsManager.InterRegion.InformRegionOfChildAgent(otherRegion.RegionHandle, agent.ControllingClient.RequestClientInfo());
|
||||
InformClientOfNeighbor(agent, otherRegion);
|
||||
}
|
||||
}
|
||||
|
||||
);
|
||||
}
|
||||
catch (System.NullReferenceException)
|
||||
{
|
||||
// This means that we're not booted up completely yet.
|
||||
// This shouldn't happen too often anymore.
|
||||
MainLog.Instance.Error("SCENE", "Couldn't inform client of regionup because we got a null reference exception");
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user