aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLImageManager.cs14
1 files changed, 13 insertions, 1 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLImageManager.cs b/OpenSim/Region/ClientStack/LindenUDP/LLImageManager.cs
index 58c4e04..3b21c85 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLImageManager.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLImageManager.cs
@@ -230,12 +230,24 @@ namespace OpenSim.Region.ClientStack.LindenUDP
230 else if (!process.data.J2KDecodeWaiting) 230 else if (!process.data.J2KDecodeWaiting)
231 { 231 {
232 // Send more data at a time for higher discard levels 232 // Send more data at a time for higher discard levels
233 for (int i = 0; i < (2*(5 - process.data.DiscardLevel) + 1)*2; i++) 233 bool done = false;
234 for (int i = 0; i < (2*(process.data.DiscardLevel) + 1)*2; i++)
234 if (!process.data.SendPacket(m_client)) 235 if (!process.data.SendPacket(m_client))
235 { 236 {
237 done = true;
236 pq[h] -= (500000*i); 238 pq[h] -= (500000*i);
237 break; 239 break;
238 } 240 }
241 if (!done)
242 {
243 for (int i = 0; i < (2 * (5- process.data.DiscardLevel) + 1) * 2; i++)
244 if (!process.data.SendPacket(m_client))
245 {
246 done = true;
247 pq[h] -= (500000 * i);
248 break;
249 }
250 }
239 } 251 }
240 // If the priority is less then -4 billion, the client has forgotten about it, pop it off 252 // If the priority is less then -4 billion, the client has forgotten about it, pop it off
241 if (pq[h] < -400000000) 253 if (pq[h] < -400000000)