diff options
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Services/PresenceService/PresenceService.cs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/OpenSim/Services/PresenceService/PresenceService.cs b/OpenSim/Services/PresenceService/PresenceService.cs index 09c31c3..c8ac38e 100644 --- a/OpenSim/Services/PresenceService/PresenceService.cs +++ b/OpenSim/Services/PresenceService/PresenceService.cs | |||
@@ -45,10 +45,20 @@ namespace OpenSim.Services.PresenceService | |||
45 | LogManager.GetLogger( | 45 | LogManager.GetLogger( |
46 | MethodBase.GetCurrentMethod().DeclaringType); | 46 | MethodBase.GetCurrentMethod().DeclaringType); |
47 | 47 | ||
48 | protected bool m_allowDuplicatePresences = false; | ||
49 | |||
48 | public PresenceService(IConfigSource config) | 50 | public PresenceService(IConfigSource config) |
49 | : base(config) | 51 | : base(config) |
50 | { | 52 | { |
51 | m_log.Debug("[PRESENCE SERVICE]: Starting presence service"); | 53 | m_log.Debug("[PRESENCE SERVICE]: Starting presence service"); |
54 | |||
55 | IConfig presenceConfig = config.Configs["PresenceService"]; | ||
56 | if (presenceConfig != null) | ||
57 | { | ||
58 | m_allowDuplicatePresences = | ||
59 | presenceConfig.GetBoolean("AllowDuplicatePresences", | ||
60 | m_allowDuplicatePresences); | ||
61 | } | ||
52 | } | 62 | } |
53 | 63 | ||
54 | public bool LoginAgent(string userID, UUID sessionID, | 64 | public bool LoginAgent(string userID, UUID sessionID, |
@@ -57,6 +67,9 @@ namespace OpenSim.Services.PresenceService | |||
57 | //PresenceData[] d = m_Database.Get("UserID", userID); | 67 | //PresenceData[] d = m_Database.Get("UserID", userID); |
58 | //m_Database.Get("UserID", userID); | 68 | //m_Database.Get("UserID", userID); |
59 | 69 | ||
70 | if (!m_allowDuplicatePresences) | ||
71 | m_Database.Delete("UserID", userID.ToString()); | ||
72 | |||
60 | PresenceData data = new PresenceData(); | 73 | PresenceData data = new PresenceData(); |
61 | 74 | ||
62 | data.UserID = userID; | 75 | data.UserID = userID; |