From bcf31a76bbc5bab6cb489c3470f49392c77efd1a Mon Sep 17 00:00:00 2001
From: Homer Horwitz
Date: Mon, 13 Apr 2009 21:23:12 +0000
Subject: Fix ordering of operations: First initialize everything, then add
 regions

---
 .../RegionModulesController/RegionModulesControllerPlugin.cs        | 6 ++++++
 1 file changed, 6 insertions(+)

(limited to 'OpenSim')

diff --git a/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs b/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
index 7dc4a74..49a400a 100644
--- a/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
+++ b/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
@@ -159,12 +159,18 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
                 scene.AddRegionModule(module.Name, module);
             }
 
+            List<INonSharedRegionModule> list = new List<INonSharedRegionModule>();
             foreach (Type type in m_nonSharedModules)
             {
                 INonSharedRegionModule module = (INonSharedRegionModule)Activator.CreateInstance(type);
                 m_log.DebugFormat("[REGIONMODULE]: Adding scene {0} to non-shared module {1}",
                                   scene.RegionInfo.RegionName, module.Name);
                 module.Initialise(m_openSim.ConfigSource.Source);
+                list.Add(module);
+            }
+
+            foreach (INonSharedRegionModule module in list)
+            {
                 module.AddRegion(scene);
                 scene.AddRegionModule(module.Name, module);
             }
-- 
cgit v1.1