Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(48)

Unified Diff: net/quic/quic_framer.cc

Issue 761903003: Update from https://crrev.com/306655 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/quic_flow_controller_test.cc ('k') | net/quic/quic_protocol.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/quic_framer.cc
diff --git a/net/quic/quic_framer.cc b/net/quic/quic_framer.cc
index d2a7694631df431fb0f2e68d4169d0e2c85026c4..c381695e4eeebaa36c4eb57a3e279b81bc47e432 100644
--- a/net/quic/quic_framer.cc
+++ b/net/quic/quic_framer.cc
@@ -781,12 +781,12 @@ bool QuicFramer::AppendPacketHeader(const QuicPacketHeader& header,
// The FEC group number is the sequence number of the first fec
// protected packet, or 0 if this packet is not protected.
if (header.is_in_fec_group == IN_FEC_GROUP) {
- DCHECK_GE(header.packet_sequence_number, header.fec_group);
- DCHECK_GT(255u, header.packet_sequence_number - header.fec_group);
+ DCHECK_LE(header.fec_group, header.packet_sequence_number);
+ DCHECK_LT(header.packet_sequence_number - header.fec_group, 255u);
// Offset from the current packet sequence number to the first fec
// protected packet.
uint8 first_fec_protected_packet_offset =
- header.packet_sequence_number - header.fec_group;
+ static_cast<uint8>(header.packet_sequence_number - header.fec_group);
if (!writer->WriteBytes(&first_fec_protected_packet_offset, 1)) {
return false;
}
@@ -987,18 +987,20 @@ QuicFramer::AckFrameInfo QuicFramer::GetAckFrameInfo(
QuicPacketSequenceNumber last_missing = *iter;
++iter;
for (; iter != frame.missing_packets.end(); ++iter) {
- if (cur_range_length != numeric_limits<uint8>::max() &&
+ if (cur_range_length < numeric_limits<uint8>::max() &&
*iter == (last_missing + 1)) {
++cur_range_length;
} else {
- ack_info.nack_ranges[last_missing - cur_range_length] = cur_range_length;
+ ack_info.nack_ranges[last_missing - cur_range_length] =
+ static_cast<uint8>(cur_range_length);
cur_range_length = 0;
}
ack_info.max_delta = max(ack_info.max_delta, *iter - last_missing);
last_missing = *iter;
}
// Include the last nack range.
- ack_info.nack_ranges[last_missing - cur_range_length] = cur_range_length;
+ ack_info.nack_ranges[last_missing - cur_range_length] =
+ static_cast<uint8>(cur_range_length);
// Include the range to the largest observed.
ack_info.max_delta =
max(ack_info.max_delta, frame.largest_observed - last_missing);
@@ -1904,7 +1906,7 @@ bool QuicFramer::AppendTypeByte(const QuicFrame& frame,
break;
}
default:
- type_byte = frame.type;
+ type_byte = static_cast<uint8>(frame.type);
break;
}
@@ -1957,7 +1959,9 @@ bool QuicFramer::AppendStreamFrame(
return false;
}
if (!no_stream_frame_length) {
- if (!writer->WriteUInt16(frame.data.TotalBufferSize())) {
+ if ((frame.data.TotalBufferSize() > std::numeric_limits<uint16>::max()) ||
+ !writer->WriteUInt16(
+ static_cast<uint16>(frame.data.TotalBufferSize()))) {
LOG(DFATAL) << "Writing stream frame length failed";
return false;
}
@@ -2071,7 +2075,7 @@ bool QuicFramer::AppendAckFrameAndTypeByte(
}
const uint8 num_missing_ranges =
- min(ack_info.nack_ranges.size(), max_num_ranges);
+ static_cast<uint8>(min(ack_info.nack_ranges.size(), max_num_ranges));
if (!writer->WriteBytes(&num_missing_ranges, 1)) {
return false;
}
@@ -2098,11 +2102,11 @@ bool QuicFramer::AppendAckFrameAndTypeByte(
// Append revived packets.
// If not all the revived packets fit, only mention the ones that do.
- uint8 num_revived_packets = min(frame.revived_packets.size(),
- kMaxRevivedPackets);
- num_revived_packets = min(
+ uint8 num_revived_packets =
+ static_cast<uint8>(min(frame.revived_packets.size(), kMaxRevivedPackets));
+ num_revived_packets = static_cast<uint8>(min(
static_cast<size_t>(num_revived_packets),
- (writer->capacity() - writer->length()) / largest_observed_length);
+ (writer->capacity() - writer->length()) / largest_observed_length));
if (!writer->WriteBytes(&num_revived_packets, 1)) {
return false;
}
« no previous file with comments | « net/quic/quic_flow_controller_test.cc ('k') | net/quic/quic_protocol.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698