aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Services')
-rw-r--r--OpenSim/Services/PresenceService/PresenceService.cs13
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;