mirror of
https://github.com/opensim/opensim.git
synced 2026-06-30 02:57:02 +08:00
Merge branch 'ubitwork' of ssh://3dhosting.de/var/git/careminster into ubitwork
Conflicts: OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
This commit is contained in:
@@ -701,10 +701,16 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
// UseCircuitCode handling
|
||||
if (packet.Type == PacketType.UseCircuitCode)
|
||||
{
|
||||
lock (m_pendingCache)
|
||||
{
|
||||
if (m_pendingCache.Contains(address))
|
||||
return;
|
||||
|
||||
m_pendingCache.AddOrUpdate(address, new Queue<UDPPacketBuffer>(), 60);
|
||||
}
|
||||
|
||||
object[] array = new object[] { buffer, packet };
|
||||
|
||||
lock (m_pendingCache)
|
||||
m_pendingCache.AddOrUpdate(address, new Queue<UDPPacketBuffer>(), 60);
|
||||
Util.FireAndForget(HandleUseCircuitCode, array);
|
||||
|
||||
return;
|
||||
@@ -721,11 +727,21 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
{
|
||||
Queue<UDPPacketBuffer> queue;
|
||||
if (m_pendingCache.TryGetValue(address, out queue))
|
||||
{
|
||||
m_log.DebugFormat("[LLUDPSERVER]: Enqueued a {0} packet into the pending queue", packet.Type);
|
||||
queue.Enqueue(buffer);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_log.Debug("[LLUDPSERVER]: Received a " + packet.Type + " packet from an unrecognized source: " + address + " in " + m_scene.RegionInfo.RegionName);
|
||||
}
|
||||
}
|
||||
|
||||
<<<<<<< HEAD
|
||||
// m_log.Debug("[LLUDPSERVER]: Received a " + packet.Type + " packet from an unrecognized source: " + address + " in " + m_scene.RegionInfo.RegionName);
|
||||
>>>>>>> 2606484e45138adef289386509b1e27552a32aee
|
||||
=======
|
||||
>>>>>>> 0baa1b557af20af3590737dc04294a9bdc8e8728
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -968,10 +984,15 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
lock (m_pendingCache)
|
||||
{
|
||||
if (!m_pendingCache.TryGetValue(remoteEndPoint, out queue))
|
||||
{
|
||||
m_log.DebugFormat("[LLUDPSERVER]: Client created but no pending queue present");
|
||||
return;
|
||||
}
|
||||
m_pendingCache.Remove(remoteEndPoint);
|
||||
}
|
||||
|
||||
m_log.DebugFormat("[LLUDPSERVER]: Client created, processing pending queue, {0} entries", queue.Count);
|
||||
|
||||
// Reinject queued packets
|
||||
while(queue.Count > 0)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user