| Index: net/quic/quic_fec_group.cc
|
| diff --git a/net/quic/quic_fec_group.cc b/net/quic/quic_fec_group.cc
|
| index 8e37044f51af57df3537df82ea4e619636c8e2f4..c2c65809616c7abdd8efd61917e3a81a6a837a87 100644
|
| --- a/net/quic/quic_fec_group.cc
|
| +++ b/net/quic/quic_fec_group.cc
|
| @@ -22,8 +22,7 @@ const QuicPacketSequenceNumber kNoSequenceNumber = kuint64max;
|
| QuicFecGroup::QuicFecGroup()
|
| : min_protected_packet_(kNoSequenceNumber),
|
| max_protected_packet_(kNoSequenceNumber),
|
| - payload_parity_len_(0),
|
| - entropy_parity_(false) {
|
| + payload_parity_len_(0) {
|
| }
|
|
|
| QuicFecGroup::~QuicFecGroup() {}
|
| @@ -41,7 +40,7 @@ bool QuicFecGroup::Update(const QuicPacketHeader& header,
|
| << header.packet_sequence_number;
|
| return false;
|
| }
|
| - if (!UpdateParity(decrypted_payload, header.entropy_flag)) {
|
| + if (!UpdateParity(decrypted_payload)) {
|
| return false;
|
| }
|
| received_packets_.insert(header.packet_sequence_number);
|
| @@ -50,21 +49,19 @@ bool QuicFecGroup::Update(const QuicPacketHeader& header,
|
|
|
| bool QuicFecGroup::UpdateFec(
|
| QuicPacketSequenceNumber fec_packet_sequence_number,
|
| - bool fec_packet_entropy,
|
| const QuicFecData& fec) {
|
| if (min_protected_packet_ != kNoSequenceNumber) {
|
| return false;
|
| }
|
| SequenceNumberSet::const_iterator it = received_packets_.begin();
|
| while (it != received_packets_.end()) {
|
| - if ((*it < fec.fec_group) ||
|
| - (*it >= fec_packet_sequence_number)) {
|
| + if ((*it < fec.fec_group) || (*it >= fec_packet_sequence_number)) {
|
| DLOG(ERROR) << "FEC group does not cover received packet: " << *it;
|
| return false;
|
| }
|
| ++it;
|
| }
|
| - if (!UpdateParity(fec.redundancy, fec_packet_entropy)) {
|
| + if (!UpdateParity(fec.redundancy)) {
|
| return false;
|
| }
|
| min_protected_packet_ = fec.fec_group;
|
| @@ -110,7 +107,7 @@ size_t QuicFecGroup::Revive(QuicPacketHeader* header,
|
| }
|
|
|
| header->packet_sequence_number = missing;
|
| - header->entropy_flag = entropy_parity_;
|
| + header->entropy_flag = 0; // Unknown entropy.
|
|
|
| received_packets_.insert(missing);
|
| return payload_parity_len_;
|
| @@ -125,7 +122,7 @@ bool QuicFecGroup::ProtectsPacketsBefore(QuicPacketSequenceNumber num) const {
|
| return *received_packets_.begin() < num;
|
| }
|
|
|
| -bool QuicFecGroup::UpdateParity(StringPiece payload, bool entropy) {
|
| +bool QuicFecGroup::UpdateParity(StringPiece payload) {
|
| DCHECK_LE(payload.size(), kMaxPacketSize);
|
| if (payload.size() > kMaxPacketSize) {
|
| DLOG(ERROR) << "Illegal payload size: " << payload.size();
|
| @@ -144,7 +141,6 @@ bool QuicFecGroup::UpdateParity(StringPiece payload, bool entropy) {
|
| memset(payload_parity_ + payload.size(), 0,
|
| kMaxPacketSize - payload.size());
|
| }
|
| - entropy_parity_ = entropy;
|
| return true;
|
| }
|
| // Update the parity by XORing in the data (padding with 0s if necessary).
|
| @@ -152,8 +148,6 @@ bool QuicFecGroup::UpdateParity(StringPiece payload, bool entropy) {
|
| uint8 byte = i < payload.size() ? payload[i] : 0x00;
|
| payload_parity_[i] ^= byte;
|
| }
|
| - // xor of boolean values.
|
| - entropy_parity_ = (entropy_parity_ != entropy);
|
| return true;
|
| }
|
|
|
|
|