mirror of
https://github.com/opensim/opensim.git
synced 2026-08-02 06:44:15 +08:00
Mantis #2107
Thank you, lulurun, for a patch to fix a possible crash when a received packet contains a quaternion with all members zeroed.
This commit is contained in:
@@ -389,12 +389,23 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||
|
||||
if ((q.Count == 0) && (throttle.UnderLimit()))
|
||||
{
|
||||
Monitor.Enter(this);
|
||||
throttle.Add(item.Packet.ToBytes().Length);
|
||||
TotalThrottle.Add(item.Packet.ToBytes().Length);
|
||||
SendQueue.Enqueue(item);
|
||||
Monitor.Pulse(this);
|
||||
Monitor.Exit(this);
|
||||
try
|
||||
{
|
||||
Monitor.Enter(this);
|
||||
throttle.Add(item.Packet.ToBytes().Length);
|
||||
TotalThrottle.Add(item.Packet.ToBytes().Length);
|
||||
SendQueue.Enqueue(item);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
// Probably a serialization exception
|
||||
m_log.WarnFormat("ThrottleCheck: {0}", e.ToString());
|
||||
}
|
||||
finally
|
||||
{
|
||||
Monitor.Pulse(this);
|
||||
Monitor.Exit(this);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user