Another temporary bug fix attempt, this time for the packet overflow problem, changed it so for now, packets are ACKed straight away in one PacketAck Packet for each ACK.
parent
73380ed52b
commit
6d8dcd1d1d
|
@ -183,14 +183,18 @@ namespace OpenSim
|
||||||
|
|
||||||
private void ack_pack(Packet Pack)
|
private void ack_pack(Packet Pack)
|
||||||
{
|
{
|
||||||
//libsecondlife.Packets.PacketAckPacket ack_it = new PacketAckPacket();
|
if (Pack.Header.Reliable)
|
||||||
//ack_it.Packets = new PacketAckPacket.PacketsBlock[1];
|
{
|
||||||
//ack_it.Packets[0] = new PacketAckPacket.PacketsBlock();
|
libsecondlife.Packets.PacketAckPacket ack_it = new PacketAckPacket();
|
||||||
//ack_it.Packets[0].ID = Pack.Header.ID;
|
ack_it.Packets = new PacketAckPacket.PacketsBlock[1];
|
||||||
//ack_it.Header.Reliable = false;
|
ack_it.Packets[0] = new PacketAckPacket.PacketsBlock();
|
||||||
|
ack_it.Packets[0].ID = Pack.Header.Sequence;
|
||||||
|
ack_it.Header.Reliable = false;
|
||||||
|
|
||||||
//OutPacket(ack_it);
|
OutPacket(ack_it);
|
||||||
|
|
||||||
|
}
|
||||||
|
/*
|
||||||
if (Pack.Header.Reliable)
|
if (Pack.Header.Reliable)
|
||||||
{
|
{
|
||||||
lock (PendingAcks)
|
lock (PendingAcks)
|
||||||
|
@ -198,7 +202,7 @@ namespace OpenSim
|
||||||
uint sequence = (uint)Pack.Header.Sequence;
|
uint sequence = (uint)Pack.Header.Sequence;
|
||||||
if (!PendingAcks.ContainsKey(sequence)) { PendingAcks[sequence] = sequence; }
|
if (!PendingAcks.ContainsKey(sequence)) { PendingAcks[sequence] = sequence; }
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
protected virtual void ProcessInPacket(Packet Pack)
|
protected virtual void ProcessInPacket(Packet Pack)
|
||||||
|
|
Loading…
Reference in New Issue