| Index: webrtc/modules/video_coding/rtp_frame_reference_finder.cc
|
| diff --git a/webrtc/modules/video_coding/rtp_frame_reference_finder.cc b/webrtc/modules/video_coding/rtp_frame_reference_finder.cc
|
| index 218a52d88065c501ced13f31392982e16d4f5cb5..d687a99924b892bb6b9234c738ac7cfc91376ff7 100644
|
| --- a/webrtc/modules/video_coding/rtp_frame_reference_finder.cc
|
| +++ b/webrtc/modules/video_coding/rtp_frame_reference_finder.cc
|
| @@ -291,7 +291,12 @@ void RtpFrameReferenceFinder::ManageFrameVp8(
|
| // Find all references for this frame.
|
| frame->num_references = 0;
|
| for (uint8_t layer = 0; layer <= codec_header.temporalIdx; ++layer) {
|
| - RTC_DCHECK_NE(-1, layer_info_it->second[layer]);
|
| + // If we have not yet received a previous frame on this temporal layer,
|
| + // stash this frame.
|
| + if (layer_info_it->second[layer] == -1) {
|
| + stashed_frames_.push_back(std::move(frame));
|
| + return;
|
| + }
|
|
|
| // If we have not yet received a frame between this frame and the referenced
|
| // frame then we have to wait for that frame to be completed first.
|
|
|