diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs index 3d9c93f..7e1d68d 100644 --- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs +++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs | |||
@@ -700,6 +700,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
700 | return; | 700 | return; |
701 | } | 701 | } |
702 | 702 | ||
703 | string homeURI = Scene.GetAgentHomeURI(sp.ControllingClient.AgentId); | ||
704 | |||
703 | m_log.DebugFormat( | 705 | m_log.DebugFormat( |
704 | "[ENTITY TRANSFER MODULE]: Teleporting {0} {1} from {2} to {3} ({4}) {5}/{6}", | 706 | "[ENTITY TRANSFER MODULE]: Teleporting {0} {1} from {2} to {3} ({4}) {5}/{6}", |
705 | sp.Name, sp.UUID, sp.Scene.RegionInfo.RegionName, | 707 | sp.Name, sp.UUID, sp.Scene.RegionInfo.RegionName, |
@@ -744,7 +746,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
744 | string reason; | 746 | string reason; |
745 | string version; | 747 | string version; |
746 | if (!Scene.SimulationService.QueryAccess( | 748 | if (!Scene.SimulationService.QueryAccess( |
747 | finalDestination, sp.ControllingClient.AgentId, position, out version, out reason)) | 749 | finalDestination, sp.ControllingClient.AgentId, homeURI, position, out version, out reason)) |
748 | { | 750 | { |
749 | sp.ControllingClient.SendTeleportFailed(reason); | 751 | sp.ControllingClient.SendTeleportFailed(reason); |
750 | 752 | ||
@@ -1456,6 +1458,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1456 | version = String.Empty; | 1458 | version = String.Empty; |
1457 | newpos = pos; | 1459 | newpos = pos; |
1458 | failureReason = string.Empty; | 1460 | failureReason = string.Empty; |
1461 | string homeURI = scene.GetAgentHomeURI(agentID); | ||
1459 | 1462 | ||
1460 | // m_log.DebugFormat( | 1463 | // m_log.DebugFormat( |
1461 | // "[ENTITY TRANSFER MODULE]: Crossing agent {0} at pos {1} in {2}", agent.Name, pos, scene.Name); | 1464 | // "[ENTITY TRANSFER MODULE]: Crossing agent {0} at pos {1} in {2}", agent.Name, pos, scene.Name); |
@@ -1489,7 +1492,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1489 | 1492 | ||
1490 | // Check to see if we have access to the target region. | 1493 | // Check to see if we have access to the target region. |
1491 | if (neighbourRegion != null | 1494 | if (neighbourRegion != null |
1492 | && !scene.SimulationService.QueryAccess(neighbourRegion, agentID, newpos, out version, out failureReason)) | 1495 | && !scene.SimulationService.QueryAccess(neighbourRegion, agentID, homeURI, newpos, out version, out failureReason)) |
1493 | { | 1496 | { |
1494 | // remember banned | 1497 | // remember banned |
1495 | m_bannedRegionCache.Add(neighbourRegion.RegionHandle, agentID); | 1498 | m_bannedRegionCache.Add(neighbourRegion.RegionHandle, agentID); |