aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Framework/Caps
diff options
context:
space:
mode:
authorUbitUmarov2014-09-24 16:01:25 +0100
committerUbitUmarov2014-09-24 16:01:25 +0100
commit1491ba3500bc954a496296f62d619c75c3942971 (patch)
treec24aba1176f7cf923cf4ecd86f86df312496f30a /OpenSim/Region/CoreModules/Framework/Caps
parent same thing on another lock(acd) (diff)
downloadopensim-SC_OLD-1491ba3500bc954a496296f62d619c75c3942971.zip
opensim-SC_OLD-1491ba3500bc954a496296f62d619c75c3942971.tar.gz
opensim-SC_OLD-1491ba3500bc954a496296f62d619c75c3942971.tar.bz2
opensim-SC_OLD-1491ba3500bc954a496296f62d619c75c3942971.tar.xz
change melanies patch, reusing caps if circuit and caps path is the same.
Do the aditional cleanup, if the path did change
Diffstat (limited to 'OpenSim/Region/CoreModules/Framework/Caps')
-rw-r--r--OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs32
1 files changed, 18 insertions, 14 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs b/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs
index 88447f3..36a9451 100644
--- a/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs
@@ -139,21 +139,25 @@ namespace OpenSim.Region.CoreModules.Framework
139 { 139 {
140 Caps oldCaps = m_capsObjects[circuitCode]; 140 Caps oldCaps = m_capsObjects[circuitCode];
141 141
142 // Remove tge handlers. They may conflict with the
143 // new object created below
144 oldCaps.DeregisterHandlers();
145 142
146 // Better safe ... should not be needed but also 143 if (capsObjectPath == oldCaps.CapsObjectPath)
147 // no big deal 144 {
148 m_capsObjects.Remove(circuitCode); 145 m_log.WarnFormat(
149 146 "[CAPS]: Reusing caps for agent {0} in region {1}. Old caps path {2}, new caps path {3}. ",
150// if (capsObjectPath == oldCaps.CapsObjectPath) 147 agentId, m_scene.RegionInfo.RegionName, oldCaps.CapsObjectPath, capsObjectPath);
151// { 148 return;
152// m_log.WarnFormat( 149 }
153// "[CAPS]: Reusing caps for agent {0} in region {1}. Old caps path {2}, new caps path {3}. ", 150 else
154// agentId, m_scene.RegionInfo.RegionName, oldCaps.CapsObjectPath, capsObjectPath); 151 {
155// return; 152 // not reusing add extra melanie cleanup
156// } 153 // Remove tge handlers. They may conflict with the
154 // new object created below
155 oldCaps.DeregisterHandlers();
156
157 // Better safe ... should not be needed but also
158 // no big deal
159 m_capsObjects.Remove(circuitCode);
160 }
157 } 161 }
158 162
159 caps = new Caps(MainServer.Instance, m_scene.RegionInfo.ExternalHostName, 163 caps = new Caps(MainServer.Instance, m_scene.RegionInfo.ExternalHostName,