aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/Linden/Caps
diff options
context:
space:
mode:
authorMelanie2013-05-01 21:39:49 +0100
committerMelanie2013-05-01 21:39:49 +0100
commit8c5445b774c602a13a7b49db1630b5f9fb9ff438 (patch)
tree6e829d2903b589c0c703793fb804632ea2324d62 /OpenSim/Region/ClientStack/Linden/Caps
parentMerge branch 'master' into careminster (diff)
parentMerge branch 'master' of melanie@opensimulator.org:/var/git/opensim (diff)
downloadopensim-SC_OLD-8c5445b774c602a13a7b49db1630b5f9fb9ff438.zip
opensim-SC_OLD-8c5445b774c602a13a7b49db1630b5f9fb9ff438.tar.gz
opensim-SC_OLD-8c5445b774c602a13a7b49db1630b5f9fb9ff438.tar.bz2
opensim-SC_OLD-8c5445b774c602a13a7b49db1630b5f9fb9ff438.tar.xz
Merge branch 'master' into careminster
Conflicts: ThirdParty/SmartThreadPool/SmartThreadPool.cs
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/Caps')
-rw-r--r--OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs13
1 files changed, 12 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
index 921d3bf..59b9585 100644
--- a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
+++ b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
@@ -355,11 +355,22 @@ namespace OpenSim.Region.ClientStack.Linden
355 return string.Empty; 355 return string.Empty;
356 } 356 }
357 357
358 Hashtable caps = m_HostCapsObj.CapsHandlers.GetCapsDetails(true); 358 OSDArray capsRequested = (OSDArray)OSDParser.DeserializeLLSDXml(request);
359 List<string> validCaps = new List<string>();
360
361 foreach (OSD c in capsRequested)
362 validCaps.Add(c.AsString());
363
364 Hashtable caps = m_HostCapsObj.CapsHandlers.GetCapsDetails(true, validCaps);
359 365
360 // Add the external too 366 // Add the external too
361 foreach (KeyValuePair<string, string> kvp in m_HostCapsObj.ExternalCapsHandlers) 367 foreach (KeyValuePair<string, string> kvp in m_HostCapsObj.ExternalCapsHandlers)
368 {
369 if (!validCaps.Contains(kvp.Key))
370 continue;
371
362 caps[kvp.Key] = kvp.Value; 372 caps[kvp.Key] = kvp.Value;
373 }
363 374
364 string result = LLSDHelpers.SerialiseLLSDReply(caps); 375 string result = LLSDHelpers.SerialiseLLSDReply(caps);
365 376