mirror of
https://github.com/opensim/opensim.git
synced 2026-08-11 20:05:33 +08:00
Send KillPackets on the Task queue rather than the State queue
Object updates are sent on the task queue. It's possible for an object update to be placed on the client queue before a kill packet comes along. The kill packet would then be placed on the state queue and possibly get sent before the update If the update gets sent afterwards then client get undeletable no owner objects until relog Placing the kills in the task queue should mean that they are received after updates. The kill record prevents subsequent updates getting on the queue Comments state that updates are sent via the state queue but this isn't true. If this was the case this problem might not exist.
This commit is contained in:
@@ -500,6 +500,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
// FIXME: Implement?
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Actually send a packet to a client.
|
||||
/// </summary>
|
||||
/// <param name="outgoingPacket"></param>
|
||||
internal void SendPacketFinal(OutgoingPacket outgoingPacket)
|
||||
{
|
||||
UDPPacketBuffer buffer = outgoingPacket.Buffer;
|
||||
|
||||
Reference in New Issue
Block a user