Fixes a race condition in EQ processing that was making EQs pop up again upon client close.

Commented remote call on GetSystemFolders again, so that it's not live yet.
This commit is contained in:
Diva Canto
2009-08-11 16:47:36 -07:00
parent 41839efcc5
commit 10d923dbea
4 changed files with 39 additions and 35 deletions

View File

@@ -328,15 +328,19 @@ namespace OpenSim.Region.CoreModules.Framework.EventQueue
public bool HasEvents(UUID agentID)
{
Queue<OSD> queue = TryGetQueue(agentID);
lock (queue)
{
if (queue.Count > 0)
return true;
else
return false;
}
// Don't use this, because of race conditions at agent closing time
//Queue<OSD> queue = TryGetQueue(agentID);
Queue<OSD> queue = GetQueue(agentID);
if (queue != null)
lock (queue)
{
if (queue.Count > 0)
return true;
else
return false;
}
return false;
}
public Hashtable GetEvents(UUID pAgentId, string request)