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

Unified Diff: net/quic/core/quic_stream_sequencer_buffer.cc

Issue 2600833002: Use QuicStrCat instead of strings::Substitute and strings::SubstituteAndAppend which do not exist i… (Closed)
Patch Set: Rebase Created 4 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 | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/core/quic_stream_sequencer_buffer.cc
diff --git a/net/quic/core/quic_stream_sequencer_buffer.cc b/net/quic/core/quic_stream_sequencer_buffer.cc
index 62853585e1c4c4bf04d71b8ed6a0e1540a6d7388..7c56c2959fce117a6bbda0deda55f8df82ffa6a1 100644
--- a/net/quic/core/quic_stream_sequencer_buffer.cc
+++ b/net/quic/core/quic_stream_sequencer_buffer.cc
@@ -25,15 +25,6 @@ const size_t kMaxNumGapsAllowed = 2 * kMaxPacketGap;
} // namespace
-namespace {
-
-string RangeDebugString(QuicStreamOffset start, QuicStreamOffset end) {
- return std::string("[") + base::Uint64ToString(start) + ", " +
- base::Uint64ToString(end) + ") ";
-}
-
-} // namespace
-
QuicStreamSequencerBuffer::Gap::Gap(QuicStreamOffset begin_offset,
QuicStreamOffset end_offset)
: begin_offset(begin_offset), end_offset(end_offset) {}
@@ -131,24 +122,23 @@ QuicErrorCode QuicStreamSequencerBuffer::OnStreamData(
if (offset < current_gap->begin_offset &&
offset + size > current_gap->begin_offset) {
// Beginning of new data overlaps data before current gap.
+ string prefix(data.data(), data.length() < 128 ? data.length() : 128);
*error_details =
- string("Beginning of received data overlaps with buffered data.\n") +
- "New frame range " + RangeDebugString(offset, offset + size) +
- " with first 128 bytes: " +
- string(data.data(), data.length() < 128 ? data.length() : 128) +
- "\nCurrently received frames: " + ReceivedFramesDebugString() +
- "\nCurrent gaps: " + GapsDebugString();
+ QuicStrCat("Beginning of received data overlaps with buffered data.\n",
+ "New frame range [", offset, ", ", offset + size,
+ ") with first 128 bytes: ", prefix, "\n",
+ "Currently received frames: ", GapsDebugString(), "\n",
+ "Current gaps: ", ReceivedFramesDebugString());
return QUIC_OVERLAPPING_STREAM_DATA;
}
if (offset + size > current_gap->end_offset) {
// End of new data overlaps with data after current gap.
- *error_details =
- string("End of received data overlaps with buffered data.\n") +
- "New frame range " + RangeDebugString(offset, offset + size) +
- " with first 128 bytes: " +
- string(data.data(), data.length() < 128 ? data.length() : 128) +
- "\nCurrently received frames: " + ReceivedFramesDebugString() +
- "\nCurrent gaps: " + GapsDebugString();
+ string prefix(data.data(), data.length() < 128 ? data.length() : 128);
+ *error_details = QuicStrCat(
+ "End of received data overlaps with buffered data.\nNew frame range [",
+ offset, ", ", offset + size, ") with first 128 bytes: ", prefix, "\n",
+ "Currently received frames: ", ReceivedFramesDebugString(), "\n",
+ "Current gaps: ", GapsDebugString());
return QUIC_OVERLAPPING_STREAM_DATA;
}
@@ -198,8 +188,8 @@ QuicErrorCode QuicStreamSequencerBuffer::OnStreamData(
*error_details = QuicStrCat(
"QuicStreamSequencerBuffer error: OnStreamData() exceed array bounds."
"write offset = ",
- offset, " write_block_num = ", write_block_num, " blocks_count_ = ",
- blocks_count_);
+ offset, " write_block_num = ", write_block_num,
+ " blocks_count_ = ", blocks_count_);
return QUIC_STREAM_SEQUENCER_INVALID_STATE;
}
if (blocks_ == nullptr) {
@@ -299,8 +289,9 @@ QuicErrorCode QuicStreamSequencerBuffer::Readv(const iovec* dest_iov,
*error_details = QuicStrCat(
"QuicStreamSequencerBuffer error:"
" Readv() dest == nullptr: ",
- (dest == nullptr), " blocks_[", block_idx, "] == nullptr: ",
- (blocks_[block_idx] == nullptr), " Gaps: ", GapsDebugString(),
+ (dest == nullptr), " blocks_[", block_idx,
+ "] == nullptr: ", (blocks_[block_idx] == nullptr),
+ " Gaps: ", GapsDebugString(),
" Remaining frames: ", ReceivedFramesDebugString(),
" total_bytes_read_ = ", total_bytes_read_);
return QUIC_STREAM_SEQUENCER_INVALID_STATE;
@@ -590,7 +581,8 @@ string QuicStreamSequencerBuffer::GapsDebugString() {
for (const Gap& gap : gaps_) {
QuicStreamOffset current_gap_begin = gap.begin_offset;
QuicStreamOffset current_gap_end = gap.end_offset;
- current_gaps_string += RangeDebugString(current_gap_begin, current_gap_end);
+ current_gaps_string.append(
+ QuicStrCat("[", current_gap_begin, ", ", current_gap_end, ") "));
}
return current_gaps_string;
}
@@ -601,9 +593,9 @@ string QuicStreamSequencerBuffer::ReceivedFramesDebugString() {
QuicStreamOffset current_frame_begin_offset = it.first;
QuicStreamOffset current_frame_end_offset =
it.second.length + current_frame_begin_offset;
- current_frames_string = string(StringPrintf(
- "%s[%" PRIu64 ", %" PRIu64 ") ", current_frames_string.c_str(),
- current_frame_begin_offset, current_frame_end_offset));
+ current_frames_string.append(QuicStrCat(
+ "[", current_frame_begin_offset, ", ", current_frame_end_offset,
+ ") receiving time ", it.second.timestamp.ToDebuggingValue()));
}
return current_frames_string;
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698