aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorSean Dague2008-12-01 16:55:39 +0000
committerSean Dague2008-12-01 16:55:39 +0000
commitc8abe037a50c9aa0d9465dcefd0c5bf4a0c44c61 (patch)
tree4aafcb51acf687e099a33a05568fe821001bc3ac /OpenSim/Region
parentattempt to modify the event queue for greater debugging (diff)
downloadopensim-SC_OLD-c8abe037a50c9aa0d9465dcefd0c5bf4a0c44c61.zip
opensim-SC_OLD-c8abe037a50c9aa0d9465dcefd0c5bf4a0c44c61.tar.gz
opensim-SC_OLD-c8abe037a50c9aa0d9465dcefd0c5bf4a0c44c61.tar.bz2
opensim-SC_OLD-c8abe037a50c9aa0d9465dcefd0c5bf4a0c44c61.tar.xz
fix the "I get no textures if I teleport back to a region I've been in
before" issue. This involves the EventQueueGet module so I'm not sure this is the right fix but it appears to work. When the ScenePresence leaves force a close on it. The reuse of the queues doesn't seem to be working, so the forced close causes a new one the next time in. This does appear to work.
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs6
1 files changed, 4 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs b/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs
index 9367811..95e0f2b 100644
--- a/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs
+++ b/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs
@@ -93,6 +93,7 @@ namespace OpenSim.Region.Environment.Modules.Framework
93 93
94 scene.EventManager.OnNewClient += OnNewClient; 94 scene.EventManager.OnNewClient += OnNewClient;
95 scene.EventManager.OnClientClosed += ClientClosed; 95 scene.EventManager.OnClientClosed += ClientClosed;
96 scene.EventManager.OnRemovePresence += ClientClosed;
96 scene.EventManager.OnAvatarEnteringNewParcel += AvatarEnteringParcel; 97 scene.EventManager.OnAvatarEnteringNewParcel += AvatarEnteringParcel;
97 scene.EventManager.OnMakeChildAgent += MakeChildAgent; 98 scene.EventManager.OnMakeChildAgent += MakeChildAgent;
98 scene.EventManager.OnRegisterCaps += OnRegisterCaps; 99 scene.EventManager.OnRegisterCaps += OnRegisterCaps;
@@ -170,12 +171,13 @@ namespace OpenSim.Region.Environment.Modules.Framework
170 171
171 private void ClientClosed(IClientAPI client) 172 private void ClientClosed(IClientAPI client)
172 { 173 {
173 m_log.DebugFormat("[EVENTQUEUE]: Closed client {0} in region {1}", client.AgentId, m_scene.RegionInfo.RegionName); 174
174 ClientClosed(client.AgentId); 175 ClientClosed(client.AgentId);
175 } 176 }
176 177
177 private void ClientClosed(UUID AgentID) 178 private void ClientClosed(UUID AgentID)
178 { 179 {
180 m_log.DebugFormat("[EVENTQUEUE]: Closed client {0} in region {1}", AgentID, m_scene.RegionInfo.RegionName);
179 lock (queues) 181 lock (queues)
180 { 182 {
181 queues.Remove(AgentID); 183 queues.Remove(AgentID);
@@ -319,7 +321,7 @@ namespace OpenSim.Region.Environment.Modules.Framework
319 321
320 if (element == null) 322 if (element == null)
321 { 323 {
322 m_log.ErrorFormat("[EVENTQUEUE]: Failed to process queue"); 324 // m_log.ErrorFormat("[EVENTQUEUE]: Failed to process queue");
323 if (thisID == -1) // close-request 325 if (thisID == -1) // close-request
324 { 326 {
325 responsedata["int_response_code"] = 404; 327 responsedata["int_response_code"] = 404;