From 4eeddf3078ac189d93aeec3c26e16066ec25d5e3 Mon Sep 17 00:00:00 2001 From: Diva Canto Date: Mon, 1 Feb 2010 16:52:42 -0800 Subject: [PATCH] Bug fix for finding default regions if the specified one doesn't exist. --- OpenSim/Services/LLLoginService/LLLoginService.cs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs index 1c5245d43e..a3f52ff56b 100644 --- a/OpenSim/Services/LLLoginService/LLLoginService.cs +++ b/OpenSim/Services/LLLoginService/LLLoginService.cs @@ -267,7 +267,7 @@ namespace OpenSim.Services.LLLoginService GridRegion region = null; - if (pinfo.HomeRegionID.Equals(UUID.Zero)) + if (pinfo.HomeRegionID.Equals(UUID.Zero) || (region = m_GridService.GetRegionByUUID(account.ScopeID, pinfo.HomeRegionID)) == null) { List defaults = m_GridService.GetDefaultRegions(account.ScopeID); if (defaults != null && defaults.Count > 0) @@ -276,11 +276,9 @@ namespace OpenSim.Services.LLLoginService where = "safe"; } else - m_log.WarnFormat("[LLOGIN SERVICE]: User {0} {1} does not have a home set and this grid does not have default locations.", + m_log.WarnFormat("[LLOGIN SERVICE]: User {0} {1} does not have a home set and this grid does not have default locations.", account.FirstName, account.LastName); } - else - region = m_GridService.GetRegionByUUID(account.ScopeID, pinfo.HomeRegionID); return region; } @@ -294,7 +292,7 @@ namespace OpenSim.Services.LLLoginService GridRegion region = null; - if (pinfo.RegionID.Equals(UUID.Zero)) + if (pinfo.RegionID.Equals(UUID.Zero) || (region = m_GridService.GetRegionByUUID(account.ScopeID, pinfo.RegionID)) == null) { List defaults = m_GridService.GetDefaultRegions(account.ScopeID); if (defaults != null && defaults.Count > 0) @@ -305,7 +303,6 @@ namespace OpenSim.Services.LLLoginService } else { - region = m_GridService.GetRegionByUUID(account.ScopeID, pinfo.RegionID); position = pinfo.Position; lookAt = pinfo.LookAt; } @@ -590,6 +587,7 @@ namespace OpenSim.Services.LLLoginService private bool LaunchAgentIndirectly(GridRegion gatekeeper, GridRegion destination, AgentCircuitData aCircuit, out string reason) { + m_log.Debug("XXX Launching agent at {0}" + destination.RegionName); return m_UserAgentService.LoginAgentToGrid(aCircuit, gatekeeper, destination, out reason); }