diff options
author | BlueWall | 2012-10-09 08:00:02 -0400 |
---|---|---|
committer | BlueWall | 2012-10-09 08:00:02 -0400 |
commit | a960efeabaf00563fef551fd3b4f6d215306c3ea (patch) | |
tree | 7b44d33a3473f1c54ffce3e08bd0dd513c14a260 /OpenSim/Server/Base | |
parent | missed some conflict markup (diff) | |
download | opensim-SC-a960efeabaf00563fef551fd3b4f6d215306c3ea.zip opensim-SC-a960efeabaf00563fef551fd3b4f6d215306c3ea.tar.gz opensim-SC-a960efeabaf00563fef551fd3b4f6d215306c3ea.tar.bz2 opensim-SC-a960efeabaf00563fef551fd3b4f6d215306c3ea.tar.xz |
Fix registry issue
Rebuild registry if loading from a local dll to give access to the addin data for it on the first pass.
Diffstat (limited to 'OpenSim/Server/Base')
-rw-r--r-- | OpenSim/Server/Base/ServerUtils.cs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/OpenSim/Server/Base/ServerUtils.cs b/OpenSim/Server/Base/ServerUtils.cs index 6c6af62..d0b6c81 100644 --- a/OpenSim/Server/Base/ServerUtils.cs +++ b/OpenSim/Server/Base/ServerUtils.cs | |||
@@ -97,8 +97,14 @@ namespace OpenSim.Server.Base | |||
97 | private void OnExtensionChanged(object s, ExtensionNodeEventArgs args) | 97 | private void OnExtensionChanged(object s, ExtensionNodeEventArgs args) |
98 | { | 98 | { |
99 | IRobustConnector connector = (IRobustConnector)args.ExtensionObject; | 99 | IRobustConnector connector = (IRobustConnector)args.ExtensionObject; |
100 | |||
101 | Addin a = Registry.GetAddin(args.ExtensionNode.Addin.Id); | 100 | Addin a = Registry.GetAddin(args.ExtensionNode.Addin.Id); |
101 | |||
102 | if(a == null) | ||
103 | { | ||
104 | Registry.Rebuild(null); | ||
105 | a = Registry.GetAddin(args.ExtensionNode.Addin.Id); | ||
106 | } | ||
107 | |||
102 | m_log.InfoFormat("[SERVER]: Extension Change: {0}/{1}", Registry.DefaultAddinsFolder, a.Name.Replace(',', '.')); | 108 | m_log.InfoFormat("[SERVER]: Extension Change: {0}/{1}", Registry.DefaultAddinsFolder, a.Name.Replace(',', '.')); |
103 | 109 | ||
104 | switch(args.Change) | 110 | switch(args.Change) |