diff options
Diffstat (limited to 'OpenSim/Server/Base/ServerUtils.cs')
-rw-r--r-- | OpenSim/Server/Base/ServerUtils.cs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/OpenSim/Server/Base/ServerUtils.cs b/OpenSim/Server/Base/ServerUtils.cs index f4472c7..8effdd2 100644 --- a/OpenSim/Server/Base/ServerUtils.cs +++ b/OpenSim/Server/Base/ServerUtils.cs | |||
@@ -65,6 +65,10 @@ namespace OpenSim.Server.Base | |||
65 | /// <returns></returns> | 65 | /// <returns></returns> |
66 | public static T LoadPlugin<T>(string dllName, Object[] args) where T:class | 66 | public static T LoadPlugin<T>(string dllName, Object[] args) where T:class |
67 | { | 67 | { |
68 | // This is good to debug configuration problems | ||
69 | //if (dllName == string.Empty) | ||
70 | // Util.PrintCallStack(); | ||
71 | |||
68 | string[] parts = dllName.Split(new char[] {':'}); | 72 | string[] parts = dllName.Split(new char[] {':'}); |
69 | 73 | ||
70 | dllName = parts[0]; | 74 | dllName = parts[0]; |
@@ -124,6 +128,13 @@ namespace OpenSim.Server.Base | |||
124 | 128 | ||
125 | return null; | 129 | return null; |
126 | } | 130 | } |
131 | catch (ReflectionTypeLoadException rtle) | ||
132 | { | ||
133 | m_log.Error(string.Format("Error loading plugin from {0}:\n{1}", dllName, | ||
134 | String.Join("\n", Array.ConvertAll(rtle.LoaderExceptions, e => e.ToString()))), | ||
135 | rtle); | ||
136 | return null; | ||
137 | } | ||
127 | catch (Exception e) | 138 | catch (Exception e) |
128 | { | 139 | { |
129 | m_log.Error(string.Format("Error loading plugin from {0}", dllName), e); | 140 | m_log.Error(string.Format("Error loading plugin from {0}", dllName), e); |