From 35aeb9010a860fa9a90acdbe2278de28923d1de3 Mon Sep 17 00:00:00 2001 From: Melanie Thielker Date: Thu, 14 Aug 2008 16:48:51 +0000 Subject: Mantis #1953 Thank you, HomerHorwitz, for a patch that changes login location handling to use the sim UUID if it has already been stored. --- OpenSim/Data/RegionProfileData.cs | 4 ++-- OpenSim/Grid/UserServer/UserLoginService.cs | 23 +++++++++++++++++------ 2 files changed, 19 insertions(+), 8 deletions(-) (limited to 'OpenSim') diff --git a/OpenSim/Data/RegionProfileData.cs b/OpenSim/Data/RegionProfileData.cs index f6172b9..9549b80 100644 --- a/OpenSim/Data/RegionProfileData.cs +++ b/OpenSim/Data/RegionProfileData.cs @@ -171,7 +171,7 @@ namespace OpenSim.Data /// /// Request sim profile information from a grid server, by Region UUID /// - /// The region UUID to look for + /// The region UUID to look for /// /// /// @@ -180,7 +180,7 @@ namespace OpenSim.Data public static RegionProfileData RequestSimProfileData(LLUUID region_uuid, Uri gridserver_url, string gridserver_sendkey, string gridserver_recvkey) { - return RequestSimData(gridserver_url, gridserver_sendkey, "region_uuid", region_uuid.UUID.ToString()); + return RequestSimData(gridserver_url, gridserver_sendkey, "region_UUID", region_uuid.UUID.ToString()); } /// diff --git a/OpenSim/Grid/UserServer/UserLoginService.cs b/OpenSim/Grid/UserServer/UserLoginService.cs index 191e482..2a70534 100644 --- a/OpenSim/Grid/UserServer/UserLoginService.cs +++ b/OpenSim/Grid/UserServer/UserLoginService.cs @@ -152,10 +152,21 @@ namespace OpenSim.Grid.UserServer } else if (startLocationRequest == "home") { - SimInfo = - RegionProfileData.RequestSimProfileData( - theUser.HomeRegion, m_config.GridServerURL, - m_config.GridSendKey, m_config.GridRecvKey); + // use the homeRegionID if it is stored already. If not, use the regionHandle as before + if(theUser.HomeRegionID != LLUUID.Zero) + { + SimInfo = + RegionProfileData.RequestSimProfileData( + theUser.HomeRegionID, m_config.GridServerURL, + m_config.GridSendKey, m_config.GridRecvKey); + } + else + { + SimInfo = + RegionProfileData.RequestSimProfileData( + theUser.HomeRegion, m_config.GridServerURL, + m_config.GridSendKey, m_config.GridRecvKey); + } } else { @@ -201,8 +212,8 @@ namespace OpenSim.Grid.UserServer (SimInfo.regionLocY * Constants.RegionSize).ToString() + "], " + "'position':[r" + theUser.HomeLocation.X.ToString() + ",r" + theUser.HomeLocation.Y.ToString() + ",r" + theUser.HomeLocation.Z.ToString() + "], " + - "'look_at':[r" + theUser.HomeLocation.X.ToString() + ",r" + - theUser.HomeLocation.Y.ToString() + ",r" + theUser.HomeLocation.Z.ToString() + "]}"; + "'look_at':[r" + theUser.HomeLookAt.X.ToString() + ",r" + + theUser.HomeLookAt.Y.ToString() + ",r" + theUser.HomeLookAt.Z.ToString() + "]}"; // Destination //CFK: The "Notifying" message always seems to appear, so subsume the data from this message into -- cgit v1.1