Fix NPC regression test failures.

These were genuine failures caused by ScenePresence.CompleteMovement() waiting for an UpdateAgent from NPC introduction that would never come.
Instead, we do not wait if the agent is an NPC.
TeleportWork
Justin Clark-Casey (justincc) 2013-07-26 18:43:15 +01:00
parent dd2c211e62
commit a08f01fa83
3 changed files with 5 additions and 2 deletions

View File

@ -1357,11 +1357,13 @@ namespace OpenSim.Region.Framework.Scenes
client.Name, Scene.RegionInfo.RegionName, AbsolutePosition); client.Name, Scene.RegionInfo.RegionName, AbsolutePosition);
// Make sure it's not a login agent. We don't want to wait for updates during login // Make sure it's not a login agent. We don't want to wait for updates during login
if ((m_teleportFlags & TeleportFlags.ViaLogin) == 0) if (PresenceType != PresenceType.Npc && (m_teleportFlags & TeleportFlags.ViaLogin) == 0)
{
// Let's wait until UpdateAgent (called by departing region) is done // Let's wait until UpdateAgent (called by departing region) is done
if (!WaitForUpdateAgent(client)) if (!WaitForUpdateAgent(client))
// The sending region never sent the UpdateAgent data, we have to refuse // The sending region never sent the UpdateAgent data, we have to refuse
return; return;
}
Vector3 look = Velocity; Vector3 look = Velocity;

View File

@ -155,7 +155,7 @@ namespace OpenSim.Region.OptionalModules.World.NPC.Tests
public void TestCreateWithAttachments() public void TestCreateWithAttachments()
{ {
TestHelpers.InMethod(); TestHelpers.InMethod();
// log4net.Config.XmlConfigurator.Configure(); // TestHelpers.EnableLogging();
UUID userId = TestHelpers.ParseTail(0x1); UUID userId = TestHelpers.ParseTail(0x1);
UserAccountHelpers.CreateUserWithInventory(m_scene, userId); UserAccountHelpers.CreateUserWithInventory(m_scene, userId);

View File

@ -180,6 +180,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Tests
public void TestOsNpcLoadAppearance() public void TestOsNpcLoadAppearance()
{ {
TestHelpers.InMethod(); TestHelpers.InMethod();
//TestHelpers.EnableLogging();
// Store an avatar with a different height from default in a notecard. // Store an avatar with a different height from default in a notecard.
UUID userId = TestHelpers.ParseTail(0x1); UUID userId = TestHelpers.ParseTail(0x1);