| Index: net/quic/quic_sent_packet_manager.cc
|
| diff --git a/net/quic/quic_sent_packet_manager.cc b/net/quic/quic_sent_packet_manager.cc
|
| index 8a198dbb5cf7fddf3dfbd4a7f3b41f8b00a81d5a..1694da25415a1b5b1b198009716d601cb793f012 100644
|
| --- a/net/quic/quic_sent_packet_manager.cc
|
| +++ b/net/quic/quic_sent_packet_manager.cc
|
| @@ -138,8 +138,17 @@ void QuicSentPacketManager::SetFromConfig(const QuicConfig& config) {
|
| }
|
| if (config.HasReceivedConnectionOptions() &&
|
| ContainsQuicTag(config.ReceivedConnectionOptions(), kRENO)) {
|
| + if (ContainsQuicTag(config.ReceivedConnectionOptions(), kBYTE)) {
|
| + send_algorithm_.reset(SendAlgorithmInterface::Create(
|
| + clock_, &rtt_stats_, kRenoBytes, stats_, initial_congestion_window_));
|
| + } else {
|
| + send_algorithm_.reset(SendAlgorithmInterface::Create(
|
| + clock_, &rtt_stats_, kReno, stats_, initial_congestion_window_));
|
| + }
|
| + } else if (config.HasReceivedConnectionOptions() &&
|
| + ContainsQuicTag(config.ReceivedConnectionOptions(), kBYTE)) {
|
| send_algorithm_.reset(SendAlgorithmInterface::Create(
|
| - clock_, &rtt_stats_, kReno, stats_, initial_congestion_window_));
|
| + clock_, &rtt_stats_, kCubicBytes, stats_, initial_congestion_window_));
|
| }
|
| EnablePacing();
|
|
|
| @@ -932,6 +941,19 @@ void QuicSentPacketManager::OnSerializedPacket(
|
| ack_notifier_manager_.OnSerializedPacket(serialized_packet);
|
| }
|
|
|
| +void QuicSentPacketManager::CancelRetransmissionsForStream(
|
| + QuicStreamId stream_id) {
|
| + unacked_packets_.CancelRetransmissionsForStream(stream_id);
|
| + PendingRetransmissionMap::iterator it = pending_retransmissions_.begin();
|
| + while (it != pending_retransmissions_.end()) {
|
| + if (HasRetransmittableFrames(it->first)) {
|
| + ++it;
|
| + continue;
|
| + }
|
| + it = pending_retransmissions_.erase(it);
|
| + }
|
| +}
|
| +
|
| void QuicSentPacketManager::EnablePacing() {
|
| // TODO(ianswett): Replace with a method which wraps the send algorithm in a
|
| // pacer every time a new algorithm is set.
|
|
|