aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
authorMelanie2010-09-17 03:49:30 +0100
committerMelanie2010-09-17 03:49:30 +0100
commit7df438323576603344442e1350ed593e797ae3ae (patch)
tree2de03b8eaf5de93ba3305b0af8ae2616f9440d15 /OpenSim/Region/ClientStack
parentRevert "* Changed 11 calls for session info to the more optimized API method" (diff)
parentRevert "* Changed 11 calls for session info to the more optimized API method" (diff)
downloadopensim-SC-7df438323576603344442e1350ed593e797ae3ae.zip
opensim-SC-7df438323576603344442e1350ed593e797ae3ae.tar.gz
opensim-SC-7df438323576603344442e1350ed593e797ae3ae.tar.bz2
opensim-SC-7df438323576603344442e1350ed593e797ae3ae.tar.xz
Merge branch 'master' into careminster-presence-refactor
Integrate the next large patch. Don't use this version, it has a ghost avatar issue. Next push will fix it.
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs7
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs8
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs4
3 files changed, 17 insertions, 2 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 0f1a1ca..dca1346 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -1533,7 +1533,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1533 lock (m_entityUpdates.SyncRoot) 1533 lock (m_entityUpdates.SyncRoot)
1534 { 1534 {
1535 m_killRecord.Add(localID); 1535 m_killRecord.Add(localID);
1536 OutPacket(kill, ThrottleOutPacketType.State); 1536
1537 // The throttle queue used here must match that being used for updates. Otherwise, there is a
1538 // chance that a kill packet put on a separate queue will be sent to the client before an existing
1539 // update packet on another queue. Receiving updates after kills results in unowned and undeletable
1540 // scene objects in a viewer until that viewer is relogged in.
1541 OutPacket(kill, ThrottleOutPacketType.Task);
1537 } 1542 }
1538 } 1543 }
1539 } 1544 }
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs b/OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs
index eebbfa5..a4738ff 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLUDPClient.cs
@@ -420,8 +420,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
420 420
421 /// <summary> 421 /// <summary>
422 /// Loops through all of the packet queues for this client and tries to send 422 /// Loops through all of the packet queues for this client and tries to send
423 /// any outgoing packets, obeying the throttling bucket limits 423 /// an outgoing packet from each, obeying the throttling bucket limits
424 /// </summary> 424 /// </summary>
425 ///
426 /// Packet queues are inspected in ascending numerical order starting from 0. Therefore, queues with a lower
427 /// ThrottleOutPacketType number will see their packet get sent first (e.g. if both Land and Wind queues have
428 /// packets, then the packet at the front of the Land queue will be sent before the packet at the front of the
429 /// wind queue).
430 ///
425 /// <remarks>This function is only called from a synchronous loop in the 431 /// <remarks>This function is only called from a synchronous loop in the
426 /// UDPServer so we don't need to bother making this thread safe</remarks> 432 /// UDPServer so we don't need to bother making this thread safe</remarks>
427 /// <returns>True if any packets were sent, otherwise false</returns> 433 /// <returns>True if any packets were sent, otherwise false</returns>
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs
index 5aeca83..e2cda6d 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs
@@ -500,6 +500,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
500 // FIXME: Implement? 500 // FIXME: Implement?
501 } 501 }
502 502
503 /// <summary>
504 /// Actually send a packet to a client.
505 /// </summary>
506 /// <param name="outgoingPacket"></param>
503 internal void SendPacketFinal(OutgoingPacket outgoingPacket) 507 internal void SendPacketFinal(OutgoingPacket outgoingPacket)
504 { 508 {
505 UDPPacketBuffer buffer = outgoingPacket.Buffer; 509 UDPPacketBuffer buffer = outgoingPacket.Buffer;