Fix race condition for SupportsFlexfecWithMultithreadedH264/0 test.

Guard FakeEncode.last_frame_info_ against concurrent access.

Bug: webrtc:9833
Change-Id: Idf36cee15307a64cd79d85f0f65914b516fc6590
Reviewed-on: https://webrtc-review.googlesource.com/c/104500
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Yves Gerey <yvesg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25057}
This commit is contained in:
Yves Gerey 2018-10-08 11:39:18 +02:00 committed by Commit Bot
parent bf47198225
commit 0414040724
2 changed files with 2 additions and 1 deletions

View File

@ -147,6 +147,7 @@ FakeEncoder::FrameInfo FakeEncoder::NextFrame(
}
}
rtc::CritScope cs(&crit_sect_);
for (uint8_t i = 0; i < num_simulcast_streams; ++i) {
if (target_bitrate.GetBitrate(i, 0) > 0) {
int temporal_id = last_frame_info_.layers.size() > i

View File

@ -71,7 +71,7 @@ class FakeEncoder : public VideoEncoder {
SimulcastStream simulcast_streams[kMaxSimulcastStreams],
int framerate);
FrameInfo last_frame_info_;
FrameInfo last_frame_info_ RTC_GUARDED_BY(crit_sect_);
Clock* const clock_;
VideoCodec config_ RTC_GUARDED_BY(crit_sect_);