aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Framework/EntityTransfer
diff options
context:
space:
mode:
authorMelanie2012-06-12 03:09:52 +0100
committerMelanie2012-06-12 03:09:52 +0100
commitdfafb5ca1451a407eafa6fbdc0246d6bdb962531 (patch)
tree62a3ba18f0ea09be7ec0bcbc3afdc701f592c7e6 /OpenSim/Region/CoreModules/Framework/EntityTransfer
parentMerge branch 'master' into careminster (diff)
parentRemove accidental timeout left in during earlier debugging. Has been in sinc... (diff)
downloadopensim-SC-dfafb5ca1451a407eafa6fbdc0246d6bdb962531.zip
opensim-SC-dfafb5ca1451a407eafa6fbdc0246d6bdb962531.tar.gz
opensim-SC-dfafb5ca1451a407eafa6fbdc0246d6bdb962531.tar.bz2
opensim-SC-dfafb5ca1451a407eafa6fbdc0246d6bdb962531.tar.xz
Merge branch 'master' into careminster
Conflicts: OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
Diffstat (limited to 'OpenSim/Region/CoreModules/Framework/EntityTransfer')
-rw-r--r--OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs46
1 files changed, 21 insertions, 25 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
index 7e71fd1..3010b59 100644
--- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
@@ -328,34 +328,30 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
328 328
329 void OnConnectionClosed(IClientAPI obj) 329 void OnConnectionClosed(IClientAPI obj)
330 { 330 {
331 if (obj.IsLoggingOut) 331 if (obj.SceneAgent.IsChildAgent)
332 { 332 return;
333 object sp = null;
334 if (obj.Scene.TryGetScenePresence(obj.AgentId, out sp))
335 {
336 if (((ScenePresence)sp).IsChildAgent)
337 return;
338 }
339 333
340 // Let's find out if this is a foreign user or a local user 334 // Let's find out if this is a foreign user or a local user
341 IUserManagement uMan = Scene.RequestModuleInterface<IUserManagement>(); 335 IUserManagement uMan = Scene.RequestModuleInterface<IUserManagement>();
342// UserAccount account = Scene.UserAccountService.GetUserAccount(Scene.RegionInfo.ScopeID, obj.AgentId); 336// UserAccount account = Scene.UserAccountService.GetUserAccount(Scene.RegionInfo.ScopeID, obj.AgentId);
343 if (uMan != null && uMan.IsLocalGridUser(obj.AgentId))
344 {
345 // local grid user
346 return;
347 }
348 337
349 AgentCircuitData aCircuit = ((Scene)(obj.Scene)).AuthenticateHandler.GetAgentCircuitData(obj.CircuitCode); 338 if (uMan != null && uMan.IsLocalGridUser(obj.AgentId))
339 {
340 // local grid user
341 return;
342 }
350 343
351 if (aCircuit.ServiceURLs.ContainsKey("HomeURI")) 344 AgentCircuitData aCircuit = ((Scene)(obj.Scene)).AuthenticateHandler.GetAgentCircuitData(obj.CircuitCode);
352 { 345
353 string url = aCircuit.ServiceURLs["HomeURI"].ToString(); 346 if (aCircuit.ServiceURLs.ContainsKey("HomeURI"))
354 IUserAgentService security = new UserAgentServiceConnector(url); 347 {
355 security.LogoutAgent(obj.AgentId, obj.SessionId); 348 string url = aCircuit.ServiceURLs["HomeURI"].ToString();
356 //m_log.DebugFormat("[HG ENTITY TRANSFER MODULE]: Sent logout call to UserAgentService @ {0}", url); 349 IUserAgentService security = new UserAgentServiceConnector(url);
357 } 350 security.LogoutAgent(obj.AgentId, obj.SessionId);
358 else 351 //m_log.DebugFormat("[HG ENTITY TRANSFER MODULE]: Sent logout call to UserAgentService @ {0}", url);
352 }
353 else
354 {
359 m_log.DebugFormat("[HG ENTITY TRANSFER MODULE]: HomeURI not found for agent {0} logout", obj.AgentId); 355 m_log.DebugFormat("[HG ENTITY TRANSFER MODULE]: HomeURI not found for agent {0} logout", obj.AgentId);
360 } 356 }
361 } 357 }