Change DCHECK in VCMDecodedFrameCallback back to just logging.
This DCHECK is triggered by org.webrtc.PeerConnectionTest#testTrackRemoval.
BUG=webrtc:6465
Review-Url: https://codereview.webrtc.org/2389703002
Cr-Commit-Position: refs/heads/master@{#14481}
diff --git a/webrtc/modules/video_coding/generic_decoder.cc b/webrtc/modules/video_coding/generic_decoder.cc
index 48bf237..b95571b 100644
--- a/webrtc/modules/video_coding/generic_decoder.cc
+++ b/webrtc/modules/video_coding/generic_decoder.cc
@@ -59,7 +59,6 @@
frameInfo = _timestampMap.Pop(decodedImage.timestamp());
callback = _receiveCallback;
}
- RTC_DCHECK(callback != nullptr);
if (frameInfo == NULL) {
LOG(LS_WARNING) << "Too many frames backed up in the decoder, dropping "
@@ -77,7 +76,13 @@
decodedImage.set_render_time_ms(frameInfo->renderTimeMs);
decodedImage.set_rotation(frameInfo->rotation);
- callback->FrameToRender(decodedImage);
+ // TODO(sakal): Investigate why callback is NULL sometimes and replace if
+ // statement with a DCHECK.
+ if (callback) {
+ callback->FrameToRender(decodedImage);
+ } else {
+ LOG(LS_WARNING) << "No callback, dropping frame.";
+ }
return WEBRTC_VIDEO_CODEC_OK;
}