diff options
author | mingchen | 2007-11-24 01:31:42 +0000 |
---|---|---|
committer | mingchen | 2007-11-24 01:31:42 +0000 |
commit | 3ce6116e4a151519d72a660bb3673418e7603557 (patch) | |
tree | b9374950db161f687e7e81240d41589c6d3aec0e /OpenSim/Region | |
parent | * Added a nice 'The Region is going down.' message to the user when the sim o... (diff) | |
download | opensim-SC-3ce6116e4a151519d72a660bb3673418e7603557.zip opensim-SC-3ce6116e4a151519d72a660bb3673418e7603557.tar.gz opensim-SC-3ce6116e4a151519d72a660bb3673418e7603557.tar.bz2 opensim-SC-3ce6116e4a151519d72a660bb3673418e7603557.tar.xz |
*Shared Modules have feelings too! -- Shared Region Modules that are found in DLLs are now correctly loaded automagically.
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/Application/OpenSimMain.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/Environment/ModuleLoader.cs | 10 |
2 files changed, 10 insertions, 2 deletions
diff --git a/OpenSim/Region/Application/OpenSimMain.cs b/OpenSim/Region/Application/OpenSimMain.cs index fd8b941..ed16cd4 100644 --- a/OpenSim/Region/Application/OpenSimMain.cs +++ b/OpenSim/Region/Application/OpenSimMain.cs | |||
@@ -346,12 +346,12 @@ namespace OpenSim | |||
346 | UDPServer udpServer; | 346 | UDPServer udpServer; |
347 | Scene scene = SetupScene(regionInfo, out udpServer); | 347 | Scene scene = SetupScene(regionInfo, out udpServer); |
348 | 348 | ||
349 | m_moduleLoader.InitialiseSharedModules(scene); | ||
350 | MainLog.Instance.Verbose("MODULES", "Loading Region's Modules"); | 349 | MainLog.Instance.Verbose("MODULES", "Loading Region's Modules"); |
351 | 350 | ||
352 | m_moduleLoader.PickupModules(scene, "."); | 351 | m_moduleLoader.PickupModules(scene, "."); |
353 | m_moduleLoader.PickupModules(scene, "ScriptEngines"); | 352 | m_moduleLoader.PickupModules(scene, "ScriptEngines"); |
354 | 353 | ||
354 | m_moduleLoader.InitialiseSharedModules(scene); | ||
355 | scene.SetModuleInterfaces(); | 355 | scene.SetModuleInterfaces(); |
356 | 356 | ||
357 | //Server side object editing permissions checking | 357 | //Server side object editing permissions checking |
diff --git a/OpenSim/Region/Environment/ModuleLoader.cs b/OpenSim/Region/Environment/ModuleLoader.cs index fc11a50..1bab2e5 100644 --- a/OpenSim/Region/Environment/ModuleLoader.cs +++ b/OpenSim/Region/Environment/ModuleLoader.cs | |||
@@ -121,7 +121,10 @@ namespace OpenSim.Region.Environment | |||
121 | IRegionModule module = LoadModule(dllName, moduleName); | 121 | IRegionModule module = LoadModule(dllName, moduleName); |
122 | if (module != null) | 122 | if (module != null) |
123 | { | 123 | { |
124 | m_loadedSharedModules.Add(module.Name, module); | 124 | if (!m_loadedSharedModules.ContainsKey(module.Name)) |
125 | { | ||
126 | m_loadedSharedModules.Add(module.Name, module); | ||
127 | } | ||
125 | } | 128 | } |
126 | } | 129 | } |
127 | 130 | ||
@@ -139,6 +142,11 @@ namespace OpenSim.Region.Environment | |||
139 | m_log.Verbose("MODULES", " [{0}]: Initializing.", module.Name); | 142 | m_log.Verbose("MODULES", " [{0}]: Initializing.", module.Name); |
140 | InitializeModule(module, scene); | 143 | InitializeModule(module, scene); |
141 | } | 144 | } |
145 | else | ||
146 | { | ||
147 | m_log.Verbose("MODULES", " [{0}]: Loading Shared Module.", module.Name); | ||
148 | LoadSharedModule(dllName, module.Name); | ||
149 | } | ||
142 | } | 150 | } |
143 | } | 151 | } |
144 | } | 152 | } |