From b6678faf3499c85cbe4e1655acc907e29c30eb59 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Fri, 9 Oct 2009 17:28:16 +0100 Subject: * Apply http://opensimulator.org/mantis/view.php?id=3933 * Remove client servers when regions are closed or removed * Thanks randomhuman! --- OpenSim/Region/Application/OpenSimBase.cs | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/Application/OpenSimBase.cs b/OpenSim/Region/Application/OpenSimBase.cs index 4592c31..3df3a1c 100644 --- a/OpenSim/Region/Application/OpenSimBase.cs +++ b/OpenSim/Region/Application/OpenSimBase.cs @@ -459,7 +459,8 @@ namespace OpenSim scene.DeleteAllSceneObjects(); m_sceneManager.CloseScene(scene); - + ShutdownClientServer(scene.RegionInfo); + if (!cleanup) return; @@ -519,7 +520,7 @@ namespace OpenSim } m_sceneManager.CloseScene(scene); - + ShutdownClientServer(scene.RegionInfo); } /// @@ -653,12 +654,10 @@ namespace OpenSim storageManager, m_moduleLoader, false, m_configSettings.PhysicalPrim, m_configSettings.See_into_region_from_neighbor, m_config.Source, m_version); } - - public void handleRestartRegion(RegionInfo whichRegion) + + protected void ShutdownClientServer(RegionInfo whichRegion) { - m_log.Info("[OPENSIM]: Got restart signal from SceneManager"); - - // Shutting down the client server + // Close and remove the clientserver for a region bool foundClientServer = false; int clientServerElement = 0; Location location = new Location(whichRegion.RegionHandle); @@ -678,6 +677,13 @@ namespace OpenSim m_clientServers[clientServerElement].NetworkStop(); m_clientServers.RemoveAt(clientServerElement); } + } + + public void handleRestartRegion(RegionInfo whichRegion) + { + m_log.Info("[OPENSIM]: Got restart signal from SceneManager"); + + ShutdownClientServer(whichRegion); IScene scene; CreateRegion(whichRegion, true, out scene); } -- cgit v1.1 From f1f239758f10ee4dfa1360a5fc0aa98d025f9035 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Fri, 9 Oct 2009 17:43:25 +0100 Subject: Apply http://opensimulator.org/mantis/view.php?id=4066 If XEngine compile fails, show script name in error message in-world as well as the exception itself Thanks Luca Peck --- OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs index e695133..847da8c 100644 --- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs +++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs @@ -642,7 +642,7 @@ namespace OpenSim.Region.ScriptEngine.XEngine m_ScriptErrorMessage += "Failed to compile script in object: '" + part.ParentGroup.RootPart.Name + "' Script name: '" + item.Name + "' Error message: " + e.Message.ToString(); m_ScriptFailCount++; - string text = "Error compiling script:\n" + e.Message.ToString(); + string text = "Error compiling script '" + item.Name + "':\n" + e.Message.ToString(); if (text.Length > 1000) text = text.Substring(0, 1000); World.SimChat(Utils.StringToBytes(text), -- cgit v1.1