From 9e08ede0bd2ecf74dcfa2670db0ad2e445c42a8b Mon Sep 17 00:00:00 2001 From: "Huaiyu (Kitty) Liu" Date: Tue, 11 Jan 2011 16:00:14 -0800 Subject: [PATCH] Commented out DeleteAllSceneObjects in RegionSyncClient, and fixed a bug in "ssync stop". --- .../RegionSyncModule/RegionSyncClient.cs | 2 +- .../SymmetricSync/RegionSyncModule.cs | 20 ++++++++++++++----- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncClient.cs b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncClient.cs index 1b2df520a2..93eaee8286 100644 --- a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncClient.cs +++ b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncClient.cs @@ -821,7 +821,7 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule private void DoInitialSync() { - m_scene.DeleteAllSceneObjects(); + //m_scene.DeleteAllSceneObjects(); //KittyL: added to distinguish different actors //Send(new RegionSyncMessage(RegionSyncMessage.MsgType.ActorType, m_actorType.ToString())); diff --git a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/SymmetricSync/RegionSyncModule.cs b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/SymmetricSync/RegionSyncModule.cs index e5a8c3d1b4..52212d87d5 100644 --- a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/SymmetricSync/RegionSyncModule.cs +++ b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/SymmetricSync/RegionSyncModule.cs @@ -635,18 +635,28 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule if (m_localSyncListener!=null && m_localSyncListener.IsListening) { m_localSyncListener.Shutdown(); + //Trigger SyncStop event, ActorSyncModules can then take actor specific action if needed. + //For instance, script engine will save script states + //save script state and stop script instances + m_scene.EventManager.TriggerOnSymmetricSyncStop(); } } else { //Shutdown all sync connectors - StopAllSyncConnectors(); + if (m_synced) + { + StopAllSyncConnectors(); + m_synced = false; + + //Trigger SyncStop event, ActorSyncModules can then take actor specific action if needed. + //For instance, script engine will save script states + //save script state and stop script instances + m_scene.EventManager.TriggerOnSymmetricSyncStop(); + } } - //Trigger SyncStop event, ActorSyncModules can then take actor specific action if needed. - //For instance, script engine will save script states - //save script state and stop script instances - m_scene.EventManager.TriggerOnSymmetricSyncStop(); + }