summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2010-02-05 23:33:31 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2010-02-05 23:33:31 +0000
commita70d602f7d445cc7ffa06ba8035957e495f8c8bf (patch)
tree6fec67a65f2a33d5f82f4f315665a63641a483c7
parentc8ea43f0957ff75664a03332c602dee241717435 (diff)
downloadrockbox-a70d602f7d445cc7ffa06ba8035957e495f8c8bf.zip
rockbox-a70d602f7d445cc7ffa06ba8035957e495f8c8bf.tar.gz
rockbox-a70d602f7d445cc7ffa06ba8035957e495f8c8bf.tar.bz2
rockbox-a70d602f7d445cc7ffa06ba8035957e495f8c8bf.tar.xz
Aceppt FS#10945 by Tomasz Kowalczyk - Fix playlists not returning to the origional order after shuffle/unshuffle
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24525 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/playlist.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/apps/playlist.c b/apps/playlist.c
index fd34cbe..d90de38 100644
--- a/apps/playlist.c
+++ b/apps/playlist.c
@@ -984,6 +984,7 @@ static int randomise_playlist(struct playlist_info* playlist,
/*
* Sort the array of indices for the playlist. If start_current is true then
* set the index to the new index of the current song.
+ * Also while going to unshuffled mode set the first_index to 0.
*/
static int sort_playlist(struct playlist_info* playlist, bool start_current,
bool write)
@@ -1012,6 +1013,7 @@ static int sort_playlist(struct playlist_info* playlist, bool start_current,
playlist->shuffle_modified = false;
if (write && playlist->control_fd >= 0)
{
+ playlist->first_index = 0;
update_control(playlist, PLAYLIST_COMMAND_UNSHUFFLE,
playlist->first_index, -1, NULL, NULL, NULL);
}