From 0ce6f14a736cbec4fe762cb7bf544808e278f22b Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Wed, 1 Nov 2017 01:45:42 -0400 Subject: [PATCH] v0.6.2a: fixed errors where music would be called without being prepared --- .../java/com/watabou/noosa/audio/Music.java | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/SPD-classes/src/main/java/com/watabou/noosa/audio/Music.java b/SPD-classes/src/main/java/com/watabou/noosa/audio/Music.java index 1f3e16912..06e60ee47 100644 --- a/SPD-classes/src/main/java/com/watabou/noosa/audio/Music.java +++ b/SPD-classes/src/main/java/com/watabou/noosa/audio/Music.java @@ -61,16 +61,15 @@ public enum Music implements MediaPlayer.OnPreparedListener, MediaPlayer.OnError AssetFileDescriptor afd = Game.instance.getAssets().openFd( assetName ); - player = new MediaPlayer(); - player.setAudioStreamType( AudioManager.STREAM_MUSIC ); - player.setDataSource( afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength() ); - player.setOnPreparedListener( this ); - player.setOnErrorListener( this ); - player.prepareAsync(); + MediaPlayer mp = new MediaPlayer(); + mp.setAudioStreamType( AudioManager.STREAM_MUSIC ); + mp.setDataSource( afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength() ); + mp.setOnPreparedListener( this ); + mp.setOnErrorListener( this ); + mp.prepareAsync(); } catch (IOException e) { - player.release(); player = null; } @@ -82,17 +81,16 @@ public enum Music implements MediaPlayer.OnPreparedListener, MediaPlayer.OnError } @Override - public void onPrepared( MediaPlayer player ) { + public void onPrepared( MediaPlayer mp ) { + player = mp; player.start(); player.setLooping(looping); } @Override public boolean onError( MediaPlayer mp, int what, int extra ) { - if (player != null) { - player.release(); - player = null; - } + mp.release(); + player = null; return true; }