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 97469ca35ecf27defdfc971376e4d6ff6399b23d..3f7dd76e868408ddb6abb12f5cb8c79323109014 100644 |
--- a/webrtc/modules/rtp_rtcp/source/rtp_sender.cc |
+++ b/webrtc/modules/rtp_rtcp/source/rtp_sender.cc |
@@ -114,8 +114,7 @@ RTPSender::RTPSender( |
TransportFeedbackObserver* transport_feedback_observer, |
BitrateStatisticsObserver* bitrate_callback, |
FrameCountObserver* frame_count_observer, |
- SendSideDelayObserver* send_side_delay_observer, |
- RtcEventLog* event_log) |
+ SendSideDelayObserver* send_side_delay_observer) |
: clock_(clock), |
// TODO(holmer): Remove this conversion when we remove the use of |
// TickTime. |
@@ -153,7 +152,8 @@ RTPSender::RTPSender( |
rtp_stats_callback_(NULL), |
frame_count_observer_(frame_count_observer), |
send_side_delay_observer_(send_side_delay_observer), |
- event_log_(event_log), |
+ event_log_crit_(CriticalSectionWrapper::CreateCriticalSection()), |
+ event_log_(nullptr), |
// RTP variables |
start_timestamp_forced_(false), |
start_timestamp_(0), |
@@ -757,6 +757,7 @@ bool RTPSender::SendPacketToNetwork(const uint8_t* packet, |
bytes_sent = transport_->SendRtp(packet, size, options) |
? static_cast<int>(size) |
: -1; |
+ CriticalSectionScoped lock(event_log_crit_.get()); |
if (event_log_ && bytes_sent > 0) { |
event_log_->LogRtpHeader(kOutgoingPacket, MediaType::ANY, packet, size); |
} |
@@ -1917,4 +1918,8 @@ RtpState RTPSender::GetRtxRtpState() const { |
return state; |
} |
+void RTPSender::SetRtcEventLog(webrtc::RtcEventLog* event_log) { |
+ CriticalSectionScoped lock(event_log_crit_.get()); |
+ event_log_ = event_log; |
+} |
} // namespace webrtc |