diff options
| -rw-r--r-- | media/java/android/media/AudioTrack.java | 8 | ||||
| -rw-r--r-- | media/java/android/media/MediaPlayer.java | 8 |
2 files changed, 14 insertions, 2 deletions
diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java index cd38b506aab9..9083c1630cca 100644 --- a/media/java/android/media/AudioTrack.java +++ b/media/java/android/media/AudioTrack.java @@ -1956,7 +1956,13 @@ public class AudioTrack extends PlayerBase e.printStackTrace(); } baseSetStartDelayMs(0); - startImpl(); + try { + startImpl(); + } catch (IllegalStateException e) { + // fail silently for a state exception when it is happening after + // a delayed start, as the player state could have changed between the + // call to start() and the execution of startImpl() + } } }.start(); } diff --git a/media/java/android/media/MediaPlayer.java b/media/java/android/media/MediaPlayer.java index 03dc2eab67a8..1a1d0f350696 100644 --- a/media/java/android/media/MediaPlayer.java +++ b/media/java/android/media/MediaPlayer.java @@ -1258,7 +1258,13 @@ public class MediaPlayer extends PlayerBase e.printStackTrace(); } baseSetStartDelayMs(0); - startImpl(); + try { + startImpl(); + } catch (IllegalStateException e) { + // fail silently for a state exception when it is happening after + // a delayed start, as the player state could have changed between the + // call to start() and the execution of startImpl() + } } }.start(); } |