diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 1a32510715..b84c3d50f1 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -3881,8 +3881,11 @@ namespace OpenSim.Region.Framework.Scenes
}
///
- /// Tries to teleport agent to other region.
+ /// Tries to teleport agent to another region.
///
+ ///
+ /// The region name must exactly match that given.
+ ///
///
///
///
@@ -3891,15 +3894,16 @@ namespace OpenSim.Region.Framework.Scenes
public void RequestTeleportLocation(IClientAPI remoteClient, string regionName, Vector3 position,
Vector3 lookat, uint teleportFlags)
{
- List regions = GridService.GetRegionsByName(RegionInfo.ScopeID, regionName, 1);
- if (regions == null || regions.Count == 0)
+ GridRegion region = GridService.GetRegionByName(RegionInfo.ScopeID, regionName);
+
+ if (region == null)
{
// can't find the region: Tell viewer and abort
remoteClient.SendTeleportFailed("The region '" + regionName + "' could not be found.");
return;
}
- RequestTeleportLocation(remoteClient, regions[0].RegionHandle, position, lookat, teleportFlags);
+ RequestTeleportLocation(remoteClient, region.RegionHandle, position, lookat, teleportFlags);
}
///