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 e49a81d7588227f58f113ac886033f360a08a194..5926c524bea672302d3dff22d661472570abf38d 100644 |
--- a/webrtc/modules/video_coding/rtp_frame_reference_finder.cc |
+++ b/webrtc/modules/video_coding/rtp_frame_reference_finder.cc |
@@ -334,8 +334,15 @@ void RtpFrameReferenceFinder::ManageFrameVp8( |
return; |
} |
- RTC_DCHECK((AheadOf<uint16_t, kPicIdLength>(frame->picture_id, |
- layer_info_it->second[layer]))); |
+ if (!(AheadOf<uint16_t, kPicIdLength>(frame->picture_id, |
+ layer_info_it->second[layer]))) { |
+ LOG(LS_WARNING) << "Frame with picture id " << frame->picture_id |
+ << " and packet range [" << frame->first_seq_num() << ", " |
+ << frame->last_seq_num() << "] already received, " |
+ << " dropping frame."; |
+ return; |
+ } |
+ |
++frame->num_references; |
frame->references[layer] = layer_info_it->second[layer]; |
} |