diff options
author | Melanie | 2010-05-16 17:22:38 +0100 |
---|---|---|
committer | Melanie | 2010-05-16 17:22:38 +0100 |
commit | d8bf370fd641488292ff211e989897433f65638e (patch) | |
tree | 7f16dbae78ba14010860cddb0ded548f46bc0d6a /OpenSim/Services | |
parent | Merge branch 'careminster-presence-refactor' of ssh://melanie@3dhosting.de/va... (diff) | |
parent | Fixes mantis #4691 for real. This time I tested it, and it works. (diff) | |
download | opensim-SC-d8bf370fd641488292ff211e989897433f65638e.zip opensim-SC-d8bf370fd641488292ff211e989897433f65638e.tar.gz opensim-SC-d8bf370fd641488292ff211e989897433f65638e.tar.bz2 opensim-SC-d8bf370fd641488292ff211e989897433f65638e.tar.xz |
Merge branch 'master' into careminster-presence-refactor
Diffstat (limited to 'OpenSim/Services')
-rw-r--r-- | OpenSim/Services/InventoryService/XInventoryService.cs | 2 | ||||
-rw-r--r-- | OpenSim/Services/LLLoginService/LLLoginResponse.cs | 20 | ||||
-rw-r--r-- | OpenSim/Services/LLLoginService/LLLoginService.cs | 6 |
3 files changed, 25 insertions, 3 deletions
diff --git a/OpenSim/Services/InventoryService/XInventoryService.cs b/OpenSim/Services/InventoryService/XInventoryService.cs index 4d7103b..974caf0 100644 --- a/OpenSim/Services/InventoryService/XInventoryService.cs +++ b/OpenSim/Services/InventoryService/XInventoryService.cs | |||
@@ -386,7 +386,7 @@ namespace OpenSim.Services.InventoryService | |||
386 | XInventoryItem[] items = m_Database.GetActiveGestures(principalID); | 386 | XInventoryItem[] items = m_Database.GetActiveGestures(principalID); |
387 | 387 | ||
388 | if (items.Length == 0) | 388 | if (items.Length == 0) |
389 | return null; | 389 | return new List<InventoryItemBase>(); |
390 | 390 | ||
391 | List<InventoryItemBase> ret = new List<InventoryItemBase>(); | 391 | List<InventoryItemBase> ret = new List<InventoryItemBase>(); |
392 | 392 | ||
diff --git a/OpenSim/Services/LLLoginService/LLLoginResponse.cs b/OpenSim/Services/LLLoginService/LLLoginResponse.cs index dc5ca51..edf41bc 100644 --- a/OpenSim/Services/LLLoginService/LLLoginResponse.cs +++ b/OpenSim/Services/LLLoginService/LLLoginResponse.cs | |||
@@ -222,12 +222,14 @@ namespace OpenSim.Services.LLLoginService | |||
222 | 222 | ||
223 | public LLLoginResponse(UserAccount account, AgentCircuitData aCircuit, GridUserInfo pinfo, | 223 | public LLLoginResponse(UserAccount account, AgentCircuitData aCircuit, GridUserInfo pinfo, |
224 | GridRegion destination, List<InventoryFolderBase> invSkel, FriendInfo[] friendsList, ILibraryService libService, | 224 | GridRegion destination, List<InventoryFolderBase> invSkel, FriendInfo[] friendsList, ILibraryService libService, |
225 | string where, string startlocation, Vector3 position, Vector3 lookAt, string message, | 225 | string where, string startlocation, Vector3 position, Vector3 lookAt, List<InventoryItemBase> gestures, string message, |
226 | GridRegion home, IPEndPoint clientIP) | 226 | GridRegion home, IPEndPoint clientIP) |
227 | : this() | 227 | : this() |
228 | { | 228 | { |
229 | FillOutInventoryData(invSkel, libService); | 229 | FillOutInventoryData(invSkel, libService); |
230 | 230 | ||
231 | FillOutActiveGestures(gestures); | ||
232 | |||
231 | CircuitCode = (int)aCircuit.circuitcode; | 233 | CircuitCode = (int)aCircuit.circuitcode; |
232 | Lastname = account.LastName; | 234 | Lastname = account.LastName; |
233 | Firstname = account.FirstName; | 235 | Firstname = account.FirstName; |
@@ -288,6 +290,22 @@ namespace OpenSim.Services.LLLoginService | |||
288 | } | 290 | } |
289 | } | 291 | } |
290 | 292 | ||
293 | private void FillOutActiveGestures(List<InventoryItemBase> gestures) | ||
294 | { | ||
295 | ArrayList list = new ArrayList(); | ||
296 | if (gestures != null) | ||
297 | { | ||
298 | foreach (InventoryItemBase gesture in gestures) | ||
299 | { | ||
300 | Hashtable item = new Hashtable(); | ||
301 | item["item_id"] = gesture.ID.ToString(); | ||
302 | item["asset_id"] = gesture.AssetID.ToString(); | ||
303 | list.Add(item); | ||
304 | } | ||
305 | } | ||
306 | ActiveGestures = list; | ||
307 | } | ||
308 | |||
291 | private void FillOutHomeData(GridUserInfo pinfo, GridRegion home) | 309 | private void FillOutHomeData(GridUserInfo pinfo, GridRegion home) |
292 | { | 310 | { |
293 | int x = 1000 * (int)Constants.RegionSize, y = 1000 * (int)Constants.RegionSize; | 311 | int x = 1000 * (int)Constants.RegionSize, y = 1000 * (int)Constants.RegionSize; |
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs index c85d35a..83f9ade 100644 --- a/OpenSim/Services/LLLoginService/LLLoginService.cs +++ b/OpenSim/Services/LLLoginService/LLLoginService.cs | |||
@@ -278,6 +278,10 @@ namespace OpenSim.Services.LLLoginService | |||
278 | return LLFailedLoginResponse.InventoryProblem; | 278 | return LLFailedLoginResponse.InventoryProblem; |
279 | } | 279 | } |
280 | 280 | ||
281 | // Get active gestures | ||
282 | List<InventoryItemBase> gestures = m_InventoryService.GetActiveGestures(account.PrincipalID); | ||
283 | m_log.DebugFormat("[LLOGIN SERVICE]: {0} active gestures", gestures.Count); | ||
284 | |||
281 | // | 285 | // |
282 | // Login the presence | 286 | // Login the presence |
283 | // | 287 | // |
@@ -356,7 +360,7 @@ namespace OpenSim.Services.LLLoginService | |||
356 | // Finally, fill out the response and return it | 360 | // Finally, fill out the response and return it |
357 | // | 361 | // |
358 | LLLoginResponse response = new LLLoginResponse(account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService, | 362 | LLLoginResponse response = new LLLoginResponse(account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService, |
359 | where, startLocation, position, lookAt, m_WelcomeMessage, home, clientIP); | 363 | where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP); |
360 | 364 | ||
361 | m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to client."); | 365 | m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to client."); |
362 | return response; | 366 | return response; |