Fix problems with regression tests by allowing invoke of Update() with a finite number of frames even if the scene isn't active.

0.7.4-extended
Justin Clark-Casey (justincc) 2012-10-12 03:19:12 +01:00
parent caedac67e0
commit da00b57d4b
2 changed files with 5 additions and 3 deletions

View File

@ -285,7 +285,8 @@ namespace OpenSim.Region.Framework.Scenes
/// Is the scene active?
/// </summary>
/// <remarks>
/// If false, maintenance and update loops are not run.
/// If false, maintenance and update loops are not being run. Updates can still be triggered manually if
/// the scene is not active.
/// </remarks>
public bool Active
{
@ -1386,7 +1387,7 @@ namespace OpenSim.Region.Framework.Scenes
List<Vector3> coarseLocations;
List<UUID> avatarUUIDs;
while (Active && !m_shuttingDown && (endRun == null || MaintenanceRun < endRun))
while (!m_shuttingDown && ((endRun == null && Active) || MaintenanceRun < endRun))
{
runtc = Util.EnvironmentTickCount();
++MaintenanceRun;
@ -1445,7 +1446,7 @@ namespace OpenSim.Region.Framework.Scenes
int previousFrameTick, tmpMS;
int maintc = Util.EnvironmentTickCount();
while (Active && !m_shuttingDown && (endFrame == null || Frame < endFrame))
while (!m_shuttingDown && ((endFrame == null && Active) || Frame < endFrame))
{
++Frame;

View File

@ -65,6 +65,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
public void Init()
{
m_scene = new SceneHelpers().SetupScene();
m_scene.Start();
}
[Test]