aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services
diff options
context:
space:
mode:
authorMelanie2010-05-16 17:22:38 +0100
committerMelanie2010-05-16 17:22:38 +0100
commitd8bf370fd641488292ff211e989897433f65638e (patch)
tree7f16dbae78ba14010860cddb0ded548f46bc0d6a /OpenSim/Services
parentMerge branch 'careminster-presence-refactor' of ssh://melanie@3dhosting.de/va... (diff)
parentFixes mantis #4691 for real. This time I tested it, and it works. (diff)
downloadopensim-SC_OLD-d8bf370fd641488292ff211e989897433f65638e.zip
opensim-SC_OLD-d8bf370fd641488292ff211e989897433f65638e.tar.gz
opensim-SC_OLD-d8bf370fd641488292ff211e989897433f65638e.tar.bz2
opensim-SC_OLD-d8bf370fd641488292ff211e989897433f65638e.tar.xz
Merge branch 'master' into careminster-presence-refactor
Diffstat (limited to 'OpenSim/Services')
-rw-r--r--OpenSim/Services/InventoryService/XInventoryService.cs2
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginResponse.cs20
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginService.cs6
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;