diff options
author | John Hurliman | 2010-03-15 20:54:57 -0700 |
---|---|---|
committer | John Hurliman | 2010-03-15 20:54:57 -0700 |
commit | 3be2b592b21d5e35c4e5d5704acfb780e270b13d (patch) | |
tree | 4d46405e951c7dcf11ec16180f3c2fdf8bbaed79 /OpenSim/Server/Base/ServerUtils.cs | |
parent | Fixing line endings (diff) | |
parent | Get the local inner simulation service object to the handler so that there is... (diff) | |
download | opensim-SC_OLD-3be2b592b21d5e35c4e5d5704acfb780e270b13d.zip opensim-SC_OLD-3be2b592b21d5e35c4e5d5704acfb780e270b13d.tar.gz opensim-SC_OLD-3be2b592b21d5e35c4e5d5704acfb780e270b13d.tar.bz2 opensim-SC_OLD-3be2b592b21d5e35c4e5d5704acfb780e270b13d.tar.xz |
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Server/Base/ServerUtils.cs | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/OpenSim/Server/Base/ServerUtils.cs b/OpenSim/Server/Base/ServerUtils.cs index a399672..e7a8294 100644 --- a/OpenSim/Server/Base/ServerUtils.cs +++ b/OpenSim/Server/Base/ServerUtils.cs | |||
@@ -101,10 +101,23 @@ namespace OpenSim.Server.Base | |||
101 | continue; | 101 | continue; |
102 | 102 | ||
103 | Type typeInterface = pluginType.GetInterface(interfaceName, true); | 103 | Type typeInterface = pluginType.GetInterface(interfaceName, true); |
104 | 104 | ||
105 | if (typeInterface != null) | 105 | if (typeInterface != null) |
106 | { | 106 | { |
107 | return (T)Activator.CreateInstance(pluginType, args); | 107 | T plug = null; |
108 | try | ||
109 | { | ||
110 | plug = (T)Activator.CreateInstance(pluginType, | ||
111 | args); | ||
112 | } | ||
113 | catch (Exception e) | ||
114 | { | ||
115 | if (!(e is System.MissingMethodException)) | ||
116 | m_log.ErrorFormat("Error loading plugin from {0}, exception {1}", dllName, e.InnerException); | ||
117 | return null; | ||
118 | } | ||
119 | |||
120 | return plug; | ||
108 | } | 121 | } |
109 | } | 122 | } |
110 | } | 123 | } |