diff options
Diffstat (limited to 'OpenSim/Region/Communications')
-rw-r--r-- | OpenSim/Region/Communications/OGS1/OGS1GridServices.cs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs index 5e7e238..cf0e0e8 100644 --- a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs +++ b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs | |||
@@ -397,7 +397,10 @@ namespace OpenSim.Region.Communications.OGS1 | |||
397 | 397 | ||
398 | public RegionInfo RequestClosestRegion(string regionName) | 398 | public RegionInfo RequestClosestRegion(string regionName) |
399 | { | 399 | { |
400 | // Don't use this method. It's only for SLURLS and Logins | 400 | foreach (RegionInfo ri in m_remoteRegionInfoCache.Values) |
401 | if(ri.RegionName == regionName) | ||
402 | return ri; | ||
403 | |||
401 | RegionInfo regionInfo = null; | 404 | RegionInfo regionInfo = null; |
402 | try | 405 | try |
403 | { | 406 | { |
@@ -438,7 +441,8 @@ namespace OpenSim.Region.Communications.OGS1 | |||
438 | regionInfo.RegionID = new LLUUID((string) responseData["region_UUID"]); | 441 | regionInfo.RegionID = new LLUUID((string) responseData["region_UUID"]); |
439 | regionInfo.RegionName = (string) responseData["region_name"]; | 442 | regionInfo.RegionName = (string) responseData["region_name"]; |
440 | 443 | ||
441 | m_remoteRegionInfoCache.Add(regionInfo.RegionHandle, regionInfo); | 444 | if(!m_remoteRegionInfoCache.ContainsKey(regionInfo.RegionHandle)) |
445 | m_remoteRegionInfoCache.Add(regionInfo.RegionHandle, regionInfo); | ||
442 | } | 446 | } |
443 | catch (WebException) | 447 | catch (WebException) |
444 | { | 448 | { |