| Index: webrtc/modules/rtp_rtcp/source/rtp_sender.cc
|
| diff --git a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc
|
| index 0afc8d24389ce876e2304f3e8084d4b1ecc33bcc..2fe80ae90f5c154099a459287e76ea575439316a 100644
|
| --- a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc
|
| +++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc
|
| @@ -850,7 +850,8 @@ bool RTPSender::PrepareAndSendPacket(uint8_t* buffer,
|
|
|
| uint8_t data_buffer_rtx[IP_PACKET_SIZE];
|
| if (send_over_rtx) {
|
| - BuildRtxPacket(buffer, &length, data_buffer_rtx);
|
| + if (!BuildRtxPacket(buffer, &length, data_buffer_rtx))
|
| + return false;
|
| buffer_to_send_ptr = data_buffer_rtx;
|
| }
|
|
|
| @@ -1154,6 +1155,8 @@ int32_t RTPSender::BuildRtpHeader(uint8_t* data_buffer,
|
| int64_t capture_time_ms) {
|
| assert(payload_type >= 0);
|
| rtc::CritScope lock(&send_critsect_);
|
| + if (!sending_media_)
|
| + return -1;
|
|
|
| timestamp_ = start_timestamp_ + capture_timestamp;
|
| last_timestamp_time_ms_ = clock_->TimeInMilliseconds();
|
| @@ -1793,9 +1796,12 @@ int32_t RTPSender::SetFecParameters(
|
| return 0;
|
| }
|
|
|
| -void RTPSender::BuildRtxPacket(uint8_t* buffer, size_t* length,
|
| +bool RTPSender::BuildRtxPacket(uint8_t* buffer,
|
| + size_t* length,
|
| uint8_t* buffer_rtx) {
|
| rtc::CritScope lock(&send_critsect_);
|
| + if (!sending_media_)
|
| + return false;
|
| uint8_t* data_buffer_rtx = buffer_rtx;
|
| // Add RTX header.
|
| RtpUtility::RtpHeaderParser rtp_parser(
|
| @@ -1836,6 +1842,7 @@ void RTPSender::BuildRtxPacket(uint8_t* buffer, size_t* length,
|
| memcpy(ptr, buffer + rtp_header.headerLength,
|
| *length - rtp_header.headerLength);
|
| *length += 2;
|
| + return true;
|
| }
|
|
|
| void RTPSender::RegisterRtpStatisticsCallback(
|
|
|