diff options
author | Diva Canto | 2013-07-02 14:31:39 -0700 |
---|---|---|
committer | Diva Canto | 2013-07-02 14:31:39 -0700 |
commit | e984bfb4c63718d5176b17f6beea46f4512cf304 (patch) | |
tree | c5c8fda8a5b7fcc7a493d5f877daadf10b017fa2 /OpenSim/Region/CoreModules | |
parent | HG: close a loophole by which if something was wrong with the ServiceURLs it ... (diff) | |
download | opensim-SC_OLD-e984bfb4c63718d5176b17f6beea46f4512cf304.zip opensim-SC_OLD-e984bfb4c63718d5176b17f6beea46f4512cf304.tar.gz opensim-SC_OLD-e984bfb4c63718d5176b17f6beea46f4512cf304.tar.bz2 opensim-SC_OLD-e984bfb4c63718d5176b17f6beea46f4512cf304.tar.xz |
This should have a strong effect on the Unknown User issue mantis #6625
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs index 5da64f7..a1343fb 100644 --- a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs +++ b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs | |||
@@ -319,8 +319,25 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement | |||
319 | } | 319 | } |
320 | else | 320 | else |
321 | { | 321 | { |
322 | // Let's try the GridUser service | ||
323 | GridUserInfo uInfo = m_Scenes[0].GridUserService.GetGridUserInfo(uuid.ToString()); | ||
324 | if (uInfo != null) | ||
325 | { | ||
326 | string url, first, last, tmp; | ||
327 | UUID u; | ||
328 | if (Util.ParseUniversalUserIdentifier(uInfo.UserID, out u, out url, out first, out last, out tmp)) | ||
329 | { | ||
330 | AddUser(uuid, first, last, url); | ||
331 | |||
332 | names[0] = m_UserCache[uuid].FirstName; | ||
333 | names[1] = m_UserCache[uuid].LastName; | ||
334 | |||
335 | return true; | ||
336 | } | ||
337 | } | ||
338 | |||
322 | names[0] = "Unknown"; | 339 | names[0] = "Unknown"; |
323 | names[1] = "UserUMMTGUN4"; | 340 | names[1] = "UserUMMTGUN5"; |
324 | 341 | ||
325 | return false; | 342 | return false; |
326 | } | 343 | } |
@@ -474,7 +491,6 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement | |||
474 | //m_log.DebugFormat("[USER MANAGEMENT MODULE]: Adding user with id {0}, creatorData {1}", id, creatorData); | 491 | //m_log.DebugFormat("[USER MANAGEMENT MODULE]: Adding user with id {0}, creatorData {1}", id, creatorData); |
475 | 492 | ||
476 | UserData oldUser; | 493 | UserData oldUser; |
477 | //lock the whole block - prevent concurrent update | ||
478 | lock (m_UserCache) | 494 | lock (m_UserCache) |
479 | m_UserCache.TryGetValue(id, out oldUser); | 495 | m_UserCache.TryGetValue(id, out oldUser); |
480 | 496 | ||