Chromium Code Reviews| Index: webrtc/modules/pacing/paced_sender.cc |
| diff --git a/webrtc/modules/pacing/paced_sender.cc b/webrtc/modules/pacing/paced_sender.cc |
| index 167be23ab624fda0c7338203dfe9fffb94218257..2c6faa0440a19d17aaa333d5603930c8f5ffa888 100644 |
| --- a/webrtc/modules/pacing/paced_sender.cc |
| +++ b/webrtc/modules/pacing/paced_sender.cc |
| @@ -389,21 +389,23 @@ void PacedSender::Process() { |
| int64_t delta_time_ms = std::min(kMaxIntervalTimeMs, elapsed_time_ms); |
| UpdateBytesPerInterval(delta_time_ms); |
| } |
| + |
| + bool is_probing = prober_->IsProbing(); |
| + int probe_cluster_id = |
| + is_probing ? prober_->CurrentClusterId() : PacketInfo::kNotAProbe; |
|
stefan-webrtc
2016/05/26 16:29:50
Any reason for doing this here instead of on line
|
| while (!packets_->Empty()) { |
| - if (media_budget_->bytes_remaining() == 0 && !prober_->IsProbing()) |
| + if (media_budget_->bytes_remaining() == 0 && !is_probing) |
| return; |
| // Since we need to release the lock in order to send, we first pop the |
| // element from the priority queue but keep it in storage, so that we can |
| // reinsert it if send fails. |
| const paced_sender::Packet& packet = packets_->BeginPop(); |
| - int probe_cluster_id = |
| - prober_->IsProbing() ? prober_->CurrentClusterId() : -1; |
| if (SendPacket(packet, probe_cluster_id)) { |
| // Send succeeded, remove it from the queue. |
| packets_->FinalizePop(packet); |
| - if (prober_->IsProbing()) |
| + if (is_probing) |
| return; |
| } else { |
| // Send failed, put it back into the queue. |
| @@ -417,14 +419,14 @@ void PacedSender::Process() { |
| return; |
| size_t padding_needed; |
| - if (prober_->IsProbing()) { |
| + if (is_probing) { |
| padding_needed = prober_->RecommendedPacketSize(); |
| } else { |
| padding_needed = padding_budget_->bytes_remaining(); |
| } |
| if (padding_needed > 0) |
| - SendPadding(static_cast<size_t>(padding_needed)); |
| + SendPadding(static_cast<size_t>(padding_needed), probe_cluster_id); |
| } |
| bool PacedSender::SendPacket(const paced_sender::Packet& packet, |
| @@ -454,9 +456,10 @@ bool PacedSender::SendPacket(const paced_sender::Packet& packet, |
| return success; |
| } |
| -void PacedSender::SendPadding(size_t padding_needed) { |
| +void PacedSender::SendPadding(size_t padding_needed, int probe_cluster_id) { |
| critsect_->Leave(); |
| - size_t bytes_sent = packet_sender_->TimeToSendPadding(padding_needed); |
| + size_t bytes_sent = |
| + packet_sender_->TimeToSendPadding(padding_needed, probe_cluster_id); |
| critsect_->Enter(); |
| if (bytes_sent > 0) { |