diff options
Added a check to LLClientView.RegisterInterface<T>(T iface), so that it can't try to add duplicate interfaces and cause a exception.
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index c715949..c4b025a 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -8466,7 +8466,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
8466 | { | 8466 | { |
8467 | lock (m_clientInterfaces) | 8467 | lock (m_clientInterfaces) |
8468 | { | 8468 | { |
8469 | m_clientInterfaces.Add(typeof(T), iface); | 8469 | if (!m_clientInterfaces.ContainsKey(typeof(T))) |
8470 | { | ||
8471 | m_clientInterfaces.Add(typeof(T), iface); | ||
8472 | } | ||
8470 | } | 8473 | } |
8471 | } | 8474 | } |
8472 | 8475 | ||