Index: media/base/android/java/src/org/chromium/media/MediaCodecBridge.java |
diff --git a/media/base/android/java/src/org/chromium/media/MediaCodecBridge.java b/media/base/android/java/src/org/chromium/media/MediaCodecBridge.java |
index 7025a1de6f19aa14461866e6d101bcf69827908f..3ed617bb34c240f42773a42358cdf99bc4fd17b0 100644 |
--- a/media/base/android/java/src/org/chromium/media/MediaCodecBridge.java |
+++ b/media/base/android/java/src/org/chromium/media/MediaCodecBridge.java |
@@ -193,12 +193,18 @@ class MediaCodecBridge { |
} |
@CalledByNative |
- private void flush() { |
- mMediaCodec.flush(); |
- mFlushed = true; |
- if (mAudioTrack != null) { |
- mAudioTrack.flush(); |
+ private int flush() { |
+ try { |
+ mFlushed = true; |
+ if (mAudioTrack != null) { |
+ mAudioTrack.flush(); |
+ } |
+ mMediaCodec.flush(); |
+ } catch(IllegalStateException e) { |
+ Log.e(TAG, "Failed to flush MediaCodec " + e.toString()); |
+ return MEDIA_CODEC_ERROR; |
} |
+ return MEDIA_CODEC_OK; |
} |
@CalledByNative |