diff options
author | Justin Clark-Casey (justincc) | 2010-03-04 22:43:30 +0000 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2010-03-04 22:43:30 +0000 |
commit | a1643c78beddf6e96d6bf124cdee8ef8c96cab51 (patch) | |
tree | 0b364ecb7c85aa08168975bd6b76b0f680c1d015 /OpenSim/Services/LLLoginService | |
parent | move linden notecard parsing from LSL_Api.cs to SLUtil so that region modules... (diff) | |
download | opensim-SC-a1643c78beddf6e96d6bf124cdee8ef8c96cab51.zip opensim-SC-a1643c78beddf6e96d6bf124cdee8ef8c96cab51.tar.gz opensim-SC-a1643c78beddf6e96d6bf124cdee8ef8c96cab51.tar.bz2 opensim-SC-a1643c78beddf6e96d6bf124cdee8ef8c96cab51.tar.xz |
remove test presence from NullPresenceData since this appears to stop existing sessions with home locations from being picked up
only tested for a single user so this may still fail for multiple users
this may well be all academic anyway since standalone need to persistently store home location in presence data in some way
Diffstat (limited to 'OpenSim/Services/LLLoginService')
-rw-r--r-- | OpenSim/Services/LLLoginService/LLLoginService.cs | 31 |
1 files changed, 28 insertions, 3 deletions
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs index ee93f73..ae729f8 100644 --- a/OpenSim/Services/LLLoginService/LLLoginService.cs +++ b/OpenSim/Services/LLLoginService/LLLoginService.cs | |||
@@ -279,7 +279,31 @@ namespace OpenSim.Services.LLLoginService | |||
279 | 279 | ||
280 | GridRegion region = null; | 280 | GridRegion region = null; |
281 | 281 | ||
282 | if (pinfo.HomeRegionID.Equals(UUID.Zero) || (region = m_GridService.GetRegionByUUID(account.ScopeID, pinfo.HomeRegionID)) == null) | 282 | bool tryDefaults = false; |
283 | |||
284 | if (pinfo.HomeRegionID.Equals(UUID.Zero)) | ||
285 | { | ||
286 | m_log.WarnFormat( | ||
287 | "[LLOGIN SERVICE]: User {0} {1} tried to login to a 'home' start location but they have none set", | ||
288 | account.FirstName, account.LastName); | ||
289 | |||
290 | tryDefaults = true; | ||
291 | } | ||
292 | else | ||
293 | { | ||
294 | region = m_GridService.GetRegionByUUID(account.ScopeID, pinfo.HomeRegionID); | ||
295 | |||
296 | if (null == region) | ||
297 | { | ||
298 | m_log.WarnFormat( | ||
299 | "[LLOGIN SERVICE]: User {0} {1} has a recorded home region of {2} but this cannot be found by the grid service", | ||
300 | account.FirstName, account.LastName, pinfo.HomeRegionID); | ||
301 | |||
302 | tryDefaults = true; | ||
303 | } | ||
304 | } | ||
305 | |||
306 | if (tryDefaults) | ||
283 | { | 307 | { |
284 | List<GridRegion> defaults = m_GridService.GetDefaultRegions(account.ScopeID); | 308 | List<GridRegion> defaults = m_GridService.GetDefaultRegions(account.ScopeID); |
285 | if (defaults != null && defaults.Count > 0) | 309 | if (defaults != null && defaults.Count > 0) |
@@ -288,7 +312,8 @@ namespace OpenSim.Services.LLLoginService | |||
288 | where = "safe"; | 312 | where = "safe"; |
289 | } | 313 | } |
290 | else | 314 | else |
291 | m_log.WarnFormat("[LLOGIN SERVICE]: User {0} {1} does not have a home set and this grid does not have default locations.", | 315 | m_log.WarnFormat( |
316 | "[LLOGIN SERVICE]: User {0} {1} does not have a valid home and this grid does not have default locations.", | ||
292 | account.FirstName, account.LastName); | 317 | account.FirstName, account.LastName); |
293 | } | 318 | } |
294 | 319 | ||
@@ -318,8 +343,8 @@ namespace OpenSim.Services.LLLoginService | |||
318 | position = pinfo.Position; | 343 | position = pinfo.Position; |
319 | lookAt = pinfo.LookAt; | 344 | lookAt = pinfo.LookAt; |
320 | } | 345 | } |
346 | |||
321 | return region; | 347 | return region; |
322 | |||
323 | } | 348 | } |
324 | else | 349 | else |
325 | { | 350 | { |