diff options
author | Teravus Ovares | 2008-09-19 01:11:40 +0000 |
---|---|---|
committer | Teravus Ovares | 2008-09-19 01:11:40 +0000 |
commit | 610313ea6499f252e488f46d39f781b6e853dab7 (patch) | |
tree | 6f6ff154fda25e51bdea57867e434d7b0366cd54 /OpenSim | |
parent | * Switches content type from application/xml+llsd to application/llsd+xml on ... (diff) | |
download | opensim-SC-610313ea6499f252e488f46d39f781b6e853dab7.zip opensim-SC-610313ea6499f252e488f46d39f781b6e853dab7.tar.gz opensim-SC-610313ea6499f252e488f46d39f781b6e853dab7.tar.bz2 opensim-SC-610313ea6499f252e488f46d39f781b6e853dab7.tar.xz |
* Added null exception handler where we couldn't locate a user data record in the cache for the user
* More OGP tweaks to make it play nice in an error condition.
* Still Experimental.
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/Environment/Modules/InterGrid/OpenGridProtocolModule.cs | 11 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.cs | 9 |
2 files changed, 18 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Modules/InterGrid/OpenGridProtocolModule.cs b/OpenSim/Region/Environment/Modules/InterGrid/OpenGridProtocolModule.cs index 1fd559e..0462427 100644 --- a/OpenSim/Region/Environment/Modules/InterGrid/OpenGridProtocolModule.cs +++ b/OpenSim/Region/Environment/Modules/InterGrid/OpenGridProtocolModule.cs | |||
@@ -312,7 +312,7 @@ namespace OpenSim.Region.Environment.Modules.InterGrid | |||
312 | //int RegionPort = (int)reg.HttpPort; | 312 | //int RegionPort = (int)reg.HttpPort; |
313 | 313 | ||
314 | UUID RemoteAgentID = requestMap["agent_id"].AsUUID(); | 314 | UUID RemoteAgentID = requestMap["agent_id"].AsUUID(); |
315 | 315 | ||
316 | // will be used in the future. The client always connects with the aditi agentid currently | 316 | // will be used in the future. The client always connects with the aditi agentid currently |
317 | UUID LocalAgentID = RemoteAgentID; | 317 | UUID LocalAgentID = RemoteAgentID; |
318 | 318 | ||
@@ -342,6 +342,15 @@ namespace OpenSim.Region.Environment.Modules.InterGrid | |||
342 | UpdateOGPState(LocalAgentID, userState); | 342 | UpdateOGPState(LocalAgentID, userState); |
343 | 343 | ||
344 | LLSDMap responseMap = new LLSDMap(); | 344 | LLSDMap responseMap = new LLSDMap(); |
345 | |||
346 | if (RemoteAgentID == UUID.Zero) | ||
347 | { | ||
348 | responseMap["connect"] = LLSD.FromBoolean(false); | ||
349 | responseMap["message"] = LLSD.FromString("No agent ID was specified in rez_avatar/request"); | ||
350 | m_log.Error("[OGP]: rez_avatar/request failed because no avatar UUID was provided in the request body"); | ||
351 | return responseMap; | ||
352 | } | ||
353 | |||
345 | responseMap["sim_host"] = LLSD.FromString(reg.ExternalHostName); | 354 | responseMap["sim_host"] = LLSD.FromString(reg.ExternalHostName); |
346 | 355 | ||
347 | // DEPRECIATED | 356 | // DEPRECIATED |
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 88f2928..210b6c6 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -2620,7 +2620,14 @@ namespace OpenSim.Region.Environment.Scenes | |||
2620 | m_authenticateHandler.AddNewCircuit(agent.circuitcode, agent); | 2620 | m_authenticateHandler.AddNewCircuit(agent.circuitcode, agent); |
2621 | // rewrite session_id | 2621 | // rewrite session_id |
2622 | CachedUserInfo userinfo = CommsManager.UserProfileCacheService.GetUserDetails(agent.AgentID); | 2622 | CachedUserInfo userinfo = CommsManager.UserProfileCacheService.GetUserDetails(agent.AgentID); |
2623 | userinfo.SessionID = agent.SessionID; | 2623 | if (userinfo != null) |
2624 | { | ||
2625 | userinfo.SessionID = agent.SessionID; | ||
2626 | } | ||
2627 | else | ||
2628 | { | ||
2629 | m_log.WarnFormat("[USERINFO CACHE]: We couldn't find a User Info record for {0}. This is usually an indication that the UUID we're looking up is invalid", agent.AgentID); | ||
2630 | } | ||
2624 | } | 2631 | } |
2625 | else | 2632 | else |
2626 | { | 2633 | { |