* Tweak to region module loading to check for a matching constructor first instead of throwing and catching exceptions

* Commenting out the MySQL startup sequence that cleans out dropped attachments under the advice that it is no longer relevant. If anything, it could be brought back as a database cleanup console command
* Updated to the latest libomv 0.8.0-pre. UUID.TryParse() will no longer throw and catch exceptions for most failed UUID parses
This commit is contained in:
John Hurliman
2009-10-27 01:46:14 -07:00
parent c75d415648
commit b498693cff
5 changed files with 29 additions and 23 deletions

View File

@@ -341,14 +341,15 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
// Actually load it
INonSharedRegionModule module = null;
try
{
Type[] ctorParamTypes = new Type[ctorArgs.Length];
for (int i = 0; i < ctorParamTypes.Length; i++)
ctorParamTypes[i] = ctorArgs[i].GetType();
if (node.Type.GetConstructor(ctorParamTypes) != null)
module = (INonSharedRegionModule)Activator.CreateInstance(node.Type, ctorArgs);
}
catch
{
else
module = (INonSharedRegionModule)Activator.CreateInstance(node.Type);
}
// Check for replaceable interfaces
Type replaceableInterface = module.ReplaceableInterface;