| Index: media/base/android/media_codec_decoder.cc
|
| diff --git a/media/base/android/media_codec_decoder.cc b/media/base/android/media_codec_decoder.cc
|
| index 89caef42036a3a967613c655c7fd3884bdf5f6a8..a89beceb91c9800560d5d96569ed28da45ded6f7 100644
|
| --- a/media/base/android/media_codec_decoder.cc
|
| +++ b/media/base/android/media_codec_decoder.cc
|
| @@ -893,10 +893,11 @@ bool MediaCodecDecoder::DepleteOutputBufferQueue() {
|
| DVLOG(2) << class_name() << "::" << __FUNCTION__
|
| << " MEDIA_CODEC_OUTPUT_FORMAT_CHANGED";
|
| if (!OnOutputFormatChanged()) {
|
| - DVLOG(0) << class_name() << "::" << __FUNCTION__
|
| - << ": OnOutputFormatChanged failed";
|
| - status = MEDIA_CODEC_ERROR;
|
| + DVLOG(1) << class_name() << "::" << __FUNCTION__
|
| + << ": OnOutputFormatChanged failed, stopping frame"
|
| + << " processing";
|
| media_task_runner_->PostTask(FROM_HERE, internal_error_cb_);
|
| + return false;
|
| }
|
| break;
|
|
|
| @@ -912,7 +913,13 @@ bool MediaCodecDecoder::DepleteOutputBufferQueue() {
|
| else
|
| render_mode = kRenderNow;
|
|
|
| - Render(buffer_index, offset, size, render_mode, pts, eos_encountered);
|
| + if (!Render(buffer_index, offset, size, render_mode, pts,
|
| + eos_encountered)) {
|
| + DVLOG(1) << class_name() << "::" << __FUNCTION__
|
| + << " Render failed, stopping frame processing";
|
| + media_task_runner_->PostTask(FROM_HERE, internal_error_cb_);
|
| + return false;
|
| + }
|
|
|
| if (render_mode == kRenderAfterPreroll) {
|
| DVLOG(1) << class_name() << "::" << __FUNCTION__ << " pts " << pts
|
|
|