diff options
Diffstat (limited to 'OpenSim/Region/Environment/Modules/InstantMessageModule.cs')
-rw-r--r-- | OpenSim/Region/Environment/Modules/InstantMessageModule.cs | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/OpenSim/Region/Environment/Modules/InstantMessageModule.cs b/OpenSim/Region/Environment/Modules/InstantMessageModule.cs index 8df2acb..70f3d99 100644 --- a/OpenSim/Region/Environment/Modules/InstantMessageModule.cs +++ b/OpenSim/Region/Environment/Modules/InstantMessageModule.cs | |||
@@ -26,27 +26,39 @@ | |||
26 | * | 26 | * |
27 | */ | 27 | */ |
28 | 28 | ||
29 | using System.Collections; | ||
29 | using System.Collections.Generic; | 30 | using System.Collections.Generic; |
30 | using libsecondlife; | 31 | using libsecondlife; |
31 | using Nini.Config; | 32 | using Nini.Config; |
33 | using Nwc.XmlRpc; | ||
32 | using OpenSim.Framework; | 34 | using OpenSim.Framework; |
33 | using OpenSim.Framework.Console; | 35 | using OpenSim.Framework.Console; |
34 | using OpenSim.Region.Environment.Interfaces; | 36 | using OpenSim.Region.Environment.Interfaces; |
35 | using OpenSim.Region.Environment.Scenes; | 37 | using OpenSim.Region.Environment.Scenes; |
36 | 38 | ||
39 | |||
37 | namespace OpenSim.Region.Environment.Modules | 40 | namespace OpenSim.Region.Environment.Modules |
38 | { | 41 | { |
39 | public class InstantMessageModule : IRegionModule | 42 | public class InstantMessageModule : IRegionModule |
40 | { | 43 | { |
41 | private List<Scene> m_scenes = new List<Scene>(); | 44 | private List<Scene> m_scenes = new List<Scene>(); |
45 | private Hashtable m_RegionInfoCache = new Hashtable(); | ||
42 | 46 | ||
43 | public void Initialise(Scene scene, IConfigSource config) | 47 | public void Initialise(Scene scene, IConfigSource config) |
44 | { | 48 | { |
45 | if (!m_scenes.Contains(scene)) | 49 | lock (m_scenes) |
46 | { | 50 | { |
47 | m_scenes.Add(scene); | 51 | if (m_scenes.Count == 0) |
48 | scene.EventManager.OnNewClient += OnNewClient; | 52 | { |
49 | scene.EventManager.OnGridInstantMessageToIMModule += OnGridInstantMessage; | 53 | //scene.AddXmlRPCHandler("avatar_location_update", processPresenceUpdate); |
54 | } | ||
55 | |||
56 | if (!m_scenes.Contains(scene)) | ||
57 | { | ||
58 | m_scenes.Add(scene); | ||
59 | scene.EventManager.OnNewClient += OnNewClient; | ||
60 | scene.EventManager.OnGridInstantMessageToIMModule += OnGridInstantMessage; | ||
61 | } | ||
50 | } | 62 | } |
51 | } | 63 | } |
52 | 64 | ||