diff --git a/OpenSim/Region/CoreModules/Hypergrid/HGWorldMapModule.cs b/OpenSim/Region/CoreModules/Hypergrid/HGWorldMapModule.cs index a2aee08913..97227b3c4b 100644 --- a/OpenSim/Region/CoreModules/Hypergrid/HGWorldMapModule.cs +++ b/OpenSim/Region/CoreModules/Hypergrid/HGWorldMapModule.cs @@ -77,13 +77,19 @@ namespace OpenSim.Region.CoreModules.Hypergrid public override void AddRegion(Scene scene) { + if (!m_Enabled) + return; + base.AddRegion(scene); - scene.EventManager.OnClientClosed += new EventManager.ClientClosed(EventManager_OnClientClosed); + scene.EventManager.OnClientClosed += EventManager_OnClientClosed; } public override void RegionLoaded(Scene scene) { + if (!m_Enabled) + return; + base.RegionLoaded(scene); ISimulatorFeaturesModule featuresModule = m_scene.RequestModuleInterface(); @@ -93,6 +99,15 @@ namespace OpenSim.Region.CoreModules.Hypergrid m_UserManagement = m_scene.RequestModuleInterface(); } + + public override void RemoveRegion(Scene scene) + { + if (!m_Enabled) + return; + + scene.EventManager.OnClientClosed -= EventManager_OnClientClosed; + } + public override string Name { get { return "HGWorldMap"; }