From c8abe037a50c9aa0d9465dcefd0c5bf4a0c44c61 Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Mon, 1 Dec 2008 16:55:39 +0000 Subject: [PATCH] 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. --- .../Environment/Modules/Framework/EventQueueGetModule.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs b/OpenSim/Region/Environment/Modules/Framework/EventQueueGetModule.cs index 9367811771..95e0f2bff5 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 scene.EventManager.OnNewClient += OnNewClient; scene.EventManager.OnClientClosed += ClientClosed; + scene.EventManager.OnRemovePresence += ClientClosed; scene.EventManager.OnAvatarEnteringNewParcel += AvatarEnteringParcel; scene.EventManager.OnMakeChildAgent += MakeChildAgent; scene.EventManager.OnRegisterCaps += OnRegisterCaps; @@ -170,12 +171,13 @@ namespace OpenSim.Region.Environment.Modules.Framework private void ClientClosed(IClientAPI client) { - m_log.DebugFormat("[EVENTQUEUE]: Closed client {0} in region {1}", client.AgentId, m_scene.RegionInfo.RegionName); + ClientClosed(client.AgentId); } private void ClientClosed(UUID AgentID) { + m_log.DebugFormat("[EVENTQUEUE]: Closed client {0} in region {1}", AgentID, m_scene.RegionInfo.RegionName); lock (queues) { queues.Remove(AgentID); @@ -319,7 +321,7 @@ namespace OpenSim.Region.Environment.Modules.Framework if (element == null) { - m_log.ErrorFormat("[EVENTQUEUE]: Failed to process queue"); + // m_log.ErrorFormat("[EVENTQUEUE]: Failed to process queue"); if (thisID == -1) // close-request { responsedata["int_response_code"] = 404;