aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Communications
diff options
context:
space:
mode:
authordiva2009-01-03 16:18:20 +0000
committerdiva2009-01-03 16:18:20 +0000
commitf1b9ff6b4b9bd96c7193a0dd7ed4c79016355729 (patch)
tree43a125e3133aa134758aa728e483702fe218a61a /OpenSim/Region/Communications
parentThis may fix the home jump problem. (diff)
downloadopensim-SC-f1b9ff6b4b9bd96c7193a0dd7ed4c79016355729.zip
opensim-SC-f1b9ff6b4b9bd96c7193a0dd7ed4c79016355729.tar.gz
opensim-SC-f1b9ff6b4b9bd96c7193a0dd7ed4c79016355729.tar.bz2
opensim-SC-f1b9ff6b4b9bd96c7193a0dd7ed4c79016355729.tar.xz
Fixed logic for sending foreign user information (HG).
Diffstat (limited to 'OpenSim/Region/Communications')
-rw-r--r--OpenSim/Region/Communications/Hypergrid/HGGridServices.cs21
1 files changed, 16 insertions, 5 deletions
diff --git a/OpenSim/Region/Communications/Hypergrid/HGGridServices.cs b/OpenSim/Region/Communications/Hypergrid/HGGridServices.cs
index fc68ba2..0874676 100644
--- a/OpenSim/Region/Communications/Hypergrid/HGGridServices.cs
+++ b/OpenSim/Region/Communications/Hypergrid/HGGridServices.cs
@@ -893,20 +893,31 @@ namespace OpenSim.Region.Communications.Hypergrid
893 public bool SendUserInformation(RegionInfo regInfo, AgentCircuitData agentData) 893 public bool SendUserInformation(RegionInfo regInfo, AgentCircuitData agentData)
894 { 894 {
895 CachedUserInfo uinfo = m_userProfileCache.GetUserDetails(agentData.AgentID); 895 CachedUserInfo uinfo = m_userProfileCache.GetUserDetails(agentData.AgentID);
896 if ((uinfo == null) || !IsGoingHome(uinfo, regInfo)) 896
897 if ((IsLocalUser(uinfo) && IsHyperlinkRegion(regInfo.RegionHandle)) ||
898 (!IsLocalUser(uinfo) && !IsGoingHome(uinfo, regInfo)))
897 { 899 {
898 m_log.Info("[HGrid]: User seems to be going to foreign region " + uinfo.UserProfile.FirstName + " " + uinfo.UserProfile.SurName); 900 m_log.Info("[HGrid]: Local user is going to foreign region or foreign user is going elsewhere");
899 if (!InformRegionOfUser(regInfo, agentData)) 901 if (!InformRegionOfUser(regInfo, agentData))
900 { 902 {
901 m_log.Warn("[HGrid]: Could not inform remote region of transferring user."); 903 m_log.Warn("[HGrid]: Could not inform remote region of transferring user.");
902 return false; 904 return false;
903 } 905 }
904 } 906 }
905 else 907 //if ((uinfo == null) || !IsGoingHome(uinfo, regInfo))
906 m_log.Info("[HGrid]: User seems to be going home " + uinfo.UserProfile.FirstName + " " + uinfo.UserProfile.SurName); 908 //{
909 // m_log.Info("[HGrid]: User seems to be going to foreign region.");
910 // if (!InformRegionOfUser(regInfo, agentData))
911 // {
912 // m_log.Warn("[HGrid]: Could not inform remote region of transferring user.");
913 // return false;
914 // }
915 //}
916 //else
917 // m_log.Info("[HGrid]: User seems to be going home " + uinfo.UserProfile.FirstName + " " + uinfo.UserProfile.SurName);
907 918
908 // May need to change agent's name 919 // May need to change agent's name
909 if (IsLocalUser(uinfo)) 920 if (IsLocalUser(uinfo) && IsHyperlinkRegion(regInfo.RegionHandle))
910 { 921 {
911 agentData.firstname = agentData.firstname + "." + agentData.lastname; 922 agentData.firstname = agentData.firstname + "." + agentData.lastname;
912 agentData.lastname = "@" + serversInfo.UserURL.Replace("http://", ""); ; //HGNetworkServersInfo.Singleton.LocalUserServerURI; 923 agentData.lastname = "@" + serversInfo.UserURL.Replace("http://", ""); ; //HGNetworkServersInfo.Singleton.LocalUserServerURI;