Index: webrtc/modules/rtp_rtcp/source/rtcp_sender.cc |
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_sender.cc b/webrtc/modules/rtp_rtcp/source/rtcp_sender.cc |
index 111757b7afcb682a25a1e5cb8c4261bf38ebede4..f250e29af7dec7ff29f6d8f1cf5b404cd1f1a2d6 100644 |
--- a/webrtc/modules/rtp_rtcp/source/rtcp_sender.cc |
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_sender.cc |
@@ -135,13 +135,12 @@ RTCPSender::RTCPSender( |
bool audio, |
Clock* clock, |
ReceiveStatistics* receive_statistics, |
- RtcpPacketTypeCounterObserver* packet_type_counter_observer) |
+ RtcpPacketTypeCounterObserver* packet_type_counter_observer, |
+ Transport* outgoing_transport) |
: audio_(audio), |
clock_(clock), |
method_(kRtcpOff), |
- critical_section_transport_( |
- CriticalSectionWrapper::CreateCriticalSection()), |
- cbTransport_(nullptr), |
+ transport_(outgoing_transport), |
critical_section_rtcp_sender_( |
CriticalSectionWrapper::CreateCriticalSection()), |
@@ -173,6 +172,7 @@ RTCPSender::RTCPSender( |
packet_type_counter_observer_(packet_type_counter_observer) { |
memset(last_send_report_, 0, sizeof(last_send_report_)); |
memset(last_rtcp_time_, 0, sizeof(last_rtcp_time_)); |
+ RTC_DCHECK(transport_ != nullptr); |
builders_[kRtcpSr] = &RTCPSender::BuildSR; |
builders_[kRtcpRr] = &RTCPSender::BuildRR; |
@@ -196,12 +196,6 @@ RTCPSender::RTCPSender( |
RTCPSender::~RTCPSender() { |
} |
-int32_t RTCPSender::RegisterSendTransport(Transport* outgoingTransport) { |
- CriticalSectionScoped lock(critical_section_transport_.get()); |
- cbTransport_ = outgoingTransport; |
- return 0; |
-} |
- |
RTCPMethod RTCPSender::Status() const { |
CriticalSectionScoped lock(critical_section_rtcp_sender_.get()); |
return method_; |
@@ -1115,11 +1109,8 @@ bool RTCPSender::PrepareReport(const FeedbackState& feedback_state, |
} |
int32_t RTCPSender::SendToNetwork(const uint8_t* dataBuffer, size_t length) { |
- CriticalSectionScoped lock(critical_section_transport_.get()); |
- if (cbTransport_) { |
- if (cbTransport_->SendRtcp(dataBuffer, length)) |
- return 0; |
- } |
+ if (transport_->SendRtcp(dataBuffer, length)) |
+ return 0; |
return -1; |
} |
@@ -1210,10 +1201,6 @@ bool RTCPSender::AllVolatileFlagsConsumed() const { |
} |
bool RTCPSender::SendFeedbackPacket(const rtcp::TransportFeedback& packet) { |
- CriticalSectionScoped lock(critical_section_transport_.get()); |
- if (!cbTransport_) |
- return false; |
- |
class Sender : public rtcp::RtcpPacket::PacketReadyCallback { |
public: |
Sender(Transport* transport) |
@@ -1226,7 +1213,7 @@ bool RTCPSender::SendFeedbackPacket(const rtcp::TransportFeedback& packet) { |
Transport* const transport_; |
bool send_failure_; |
- } sender(cbTransport_); |
+ } sender(transport_); |
uint8_t buffer[IP_PACKET_SIZE]; |
return packet.BuildExternalBuffer(buffer, IP_PACKET_SIZE, &sender) && |