Chromium Code Reviews| Index: content/public/android/java/src/org/chromium/content/browser/MediaThrottler.java |
| diff --git a/content/public/android/java/src/org/chromium/content/browser/MediaThrottler.java b/content/public/android/java/src/org/chromium/content/browser/MediaThrottler.java |
| index 1895d6e1aa96ba70bb6bfb8bedf1d703e54bff6d..9992704b8715a703656c89d025a32896eeeb9b61 100644 |
| --- a/content/public/android/java/src/org/chromium/content/browser/MediaThrottler.java |
| +++ b/content/public/android/java/src/org/chromium/content/browser/MediaThrottler.java |
| @@ -103,7 +103,11 @@ class MediaThrottler implements MediaPlayer.OnErrorListener { |
| protected Void doInBackground(Void... voids) { |
| synchronized (mLock) { |
| if (mPlayer != null || mRequestCount == 0) return null; |
| - mPlayer = MediaPlayer.create(mContext, R.raw.empty); |
| + try { |
|
Tima Vaisburd
2015/10/30 21:54:37
drive-by: The documentation does not seem to tell
qinmin
2015/10/30 21:58:16
if u check MediaPlayer.create(), it already catche
|
| + mPlayer = MediaPlayer.create(mContext, R.raw.empty); |
| + } catch (IllegalStateException e) { |
| + Log.e(TAG, "Exception happens while creating the watch dog player.", e); |
| + } |
| if (mPlayer == null) { |
| Log.e(TAG, "Unable to create watch dog player, treat it as server crash."); |
| onMediaServerCrash(); |
| @@ -131,7 +135,7 @@ class MediaThrottler implements MediaPlayer.OnErrorListener { |
| return false; |
| } |
| mRequestCount++; |
| - if (mRequestCount == 1) { |
| + if (mRequestCount == 1 || mPlayer == null) { |
| mHandler.removeCallbacks(mDelayedReleaseRunnable); |
| mHandler.post(new Runnable() { |
| @Override |