diff options
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/Communications/Local/LocalLoginService.cs | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/OpenSim/Region/Communications/Local/LocalLoginService.cs b/OpenSim/Region/Communications/Local/LocalLoginService.cs index f16fd7d..864d58c 100644 --- a/OpenSim/Region/Communications/Local/LocalLoginService.cs +++ b/OpenSim/Region/Communications/Local/LocalLoginService.cs | |||
@@ -135,10 +135,17 @@ namespace OpenSim.Region.Communications.Local | |||
135 | if (startLocationRequest == "last") | 135 | if (startLocationRequest == "last") |
136 | { | 136 | { |
137 | currentRegion = theUser.CurrentAgent.Handle; | 137 | currentRegion = theUser.CurrentAgent.Handle; |
138 | locX = (UInt32)theUser.CurrentAgent.Position.X; | ||
139 | locY = (UInt32)theUser.CurrentAgent.Position.Y; | ||
140 | locZ = (UInt32)theUser.CurrentAgent.Position.Z; | ||
141 | response.StartLocation = "last"; | ||
142 | specificStartLocation = true; | ||
138 | } | 143 | } |
139 | else if (startLocationRequest == "home") | 144 | else if (startLocationRequest == "home") |
140 | { | 145 | { |
141 | currentRegion = theUser.HomeRegion; | 146 | currentRegion = theUser.HomeRegion; |
147 | response.StartLocation = "home"; | ||
148 | |||
142 | } | 149 | } |
143 | else | 150 | else |
144 | { | 151 | { |
@@ -166,6 +173,8 @@ namespace OpenSim.Region.Communications.Local | |||
166 | locX = UInt32.Parse(uriMatch.Groups["x"].ToString()); | 173 | locX = UInt32.Parse(uriMatch.Groups["x"].ToString()); |
167 | locY = UInt32.Parse(uriMatch.Groups["y"].ToString()); | 174 | locY = UInt32.Parse(uriMatch.Groups["y"].ToString()); |
168 | locZ = UInt32.Parse(uriMatch.Groups["z"].ToString()); | 175 | locZ = UInt32.Parse(uriMatch.Groups["z"].ToString()); |
176 | // can be: last, home, safe, url | ||
177 | response.StartLocation = "url"; | ||
169 | specificStartLocation = true; | 178 | specificStartLocation = true; |
170 | } | 179 | } |
171 | } | 180 | } |
@@ -196,9 +205,6 @@ namespace OpenSim.Region.Communications.Local | |||
196 | m_log.DebugFormat( | 205 | m_log.DebugFormat( |
197 | "[CAPS][LOGIN]: RegionX {0} RegionY {0}", response.RegionX, response.RegionY); | 206 | "[CAPS][LOGIN]: RegionX {0} RegionY {0}", response.RegionX, response.RegionY); |
198 | 207 | ||
199 | // can be: last, home, safe, url | ||
200 | if (specificStartLocation) response.StartLocation = "url"; | ||
201 | |||
202 | response.SeedCapability = "http://" + reg.ExternalHostName + ":" + | 208 | response.SeedCapability = "http://" + reg.ExternalHostName + ":" + |
203 | serversInfo.HttpListenerPort.ToString() + "/CAPS/" + capsPath + "0000/"; | 209 | serversInfo.HttpListenerPort.ToString() + "/CAPS/" + capsPath + "0000/"; |
204 | 210 | ||