aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes
diff options
context:
space:
mode:
authorJustin Clarke Casey2008-04-02 16:46:58 +0000
committerJustin Clarke Casey2008-04-02 16:46:58 +0000
commitf27f8610726b1e148d17e69c7fef34d2fc814bd3 (patch)
treedb1d4c8fce9fa8edcf579f6275d3152d89792e43 /OpenSim/Region/Environment/Scenes
parentfix ups to include OpenSim.Framework explicit includes (they (diff)
downloadopensim-SC-f27f8610726b1e148d17e69c7fef34d2fc814bd3.zip
opensim-SC-f27f8610726b1e148d17e69c7fef34d2fc814bd3.tar.gz
opensim-SC-f27f8610726b1e148d17e69c7fef34d2fc814bd3.tar.bz2
opensim-SC-f27f8610726b1e148d17e69c7fef34d2fc814bd3.tar.xz
* Attempt to resolve mantis 873 by placing caps removal operations in a critical section
Diffstat (limited to 'OpenSim/Region/Environment/Scenes')
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs29
1 files changed, 16 insertions, 13 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 7ee0478..2237922 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -1755,20 +1755,23 @@ namespace OpenSim.Region.Environment.Scenes
1755 /// <param name="agentId"></param> 1755 /// <param name="agentId"></param>
1756 public void RemoveCapsHandler(LLUUID agentId) 1756 public void RemoveCapsHandler(LLUUID agentId)
1757 { 1757 {
1758 if (m_capsHandlers.ContainsKey(agentId)) 1758 lock (m_capsHandlers)
1759 { 1759 {
1760 m_log.DebugFormat( 1760 if (m_capsHandlers.ContainsKey(agentId))
1761 "[CAPS]: Removing CAPS handler for root agent {0} in {1}", 1761 {
1762 agentId, RegionInfo.RegionName); 1762 m_log.DebugFormat(
1763 1763 "[CAPS]: Removing CAPS handler for root agent {0} in {1}",
1764 m_capsHandlers[agentId].DeregisterHandlers(); 1764 agentId, RegionInfo.RegionName);
1765 m_capsHandlers.Remove(agentId); 1765
1766 } 1766 m_capsHandlers[agentId].DeregisterHandlers();
1767 else 1767 m_capsHandlers.Remove(agentId);
1768 { 1768 }
1769 m_log.WarnFormat( 1769 else
1770 "[CAPS]: Received request to remove CAPS handler for root agent {0} in {1}, but no such CAPS handler found!", 1770 {
1771 agentId, RegionInfo.RegionName); 1771 m_log.WarnFormat(
1772 "[CAPS]: Received request to remove CAPS handler for root agent {0} in {1}, but no such CAPS handler found!",
1773 agentId, RegionInfo.RegionName);
1774 }
1772 } 1775 }
1773 } 1776 }
1774 1777