From f194262c992caf37f52f7ce71316040c9a4dedf0 Mon Sep 17 00:00:00 2001 From: Christopher Eby Date: Fri, 23 Sep 2011 21:56:13 -0500 Subject: [PATCH] Don't shuffle songs unnecessarily --- src/org/kreed/vanilla/SongTimeline.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/org/kreed/vanilla/SongTimeline.java b/src/org/kreed/vanilla/SongTimeline.java index 9d50261f..0e9384d9 100644 --- a/src/org/kreed/vanilla/SongTimeline.java +++ b/src/org/kreed/vanilla/SongTimeline.java @@ -303,6 +303,7 @@ public final class SongTimeline { synchronized (this) { saveActiveSongs(); mShuffle = shuffle; + mShuffledSongs = null; if (shuffle && mFinishAction != FINISH_RANDOM) { shuffleAll(); ArrayList songs = mShuffledSongs; @@ -338,6 +339,9 @@ public final class SongTimeline { */ private Song shuffleAll() { + if (mShuffledSongs != null) + return mShuffledSongs.get(0); + ArrayList songs = new ArrayList(mSongs); Collections.shuffle(songs, MediaUtils.getRandom()); mShuffledSongs = songs;