[prev in list] [next in list] [prev in thread] [next in thread]
List: rockbox-cvs
Subject: Playlist sort/shuffle: Fix data type
From: rockbox-gerrit-noreply--- via rockbox-cvs <rockbox-cvs () lists ! haxx ! se>
Date: 2023-11-01 19:35:58
Message-ID: 202311011935.3A1JZwq33554239 () archos ! rockbox ! org
[Download RAW message or body]
commit 332a0fa9686b2272b018bc2846a8b3a7dde198fd
Author: Christian Soffke <christian.soffke@gmail.com>
Date: Wed Nov 1 16:06:47 2023 +0100
Playlist sort/shuffle: Fix data type
I noticed that setting first_index to the
current track when shuffling a playlist
could fail in the Simulator.
Change-Id: Ic9467bd46a93aa2d2b765271110b0baee7058208
diff --git a/apps/playlist.c b/apps/playlist.c
index 972d0ea755..b0007e49bd 100644
--- a/apps/playlist.c
+++ b/apps/playlist.c
@@ -1417,7 +1417,7 @@ static int remove_track_unlocked(struct playlist_info* playlist,
* to make sure the current index is still pointing to correct track.
*/
static void find_and_set_playlist_index_unlocked(struct playlist_info* playlist,
- unsigned int seek)
+ unsigned long seek)
{
int i;
@@ -1443,7 +1443,7 @@ static int randomise_playlist_unlocked(struct playlist_info* playlist,
{
int count;
int candidate;
- unsigned int current = playlist->indices[playlist->index];
+ unsigned long current = playlist->indices[playlist->index];
/* seed 0 is used to identify sorted playlist for resume purposes */
if (seed == 0)
@@ -1459,7 +1459,7 @@ static int randomise_playlist_unlocked(struct playlist_info* playlist,
candidate = rand() % (count + 1);
/* now swap the values at the 'count' and 'candidate' positions */
- int indextmp = playlist->indices[candidate];
+ unsigned long indextmp = playlist->indices[candidate];
playlist->indices[candidate] = playlist->indices[count];
playlist->indices[count] = indextmp;
#ifdef HAVE_DIRCACHE
@@ -1525,7 +1525,7 @@ static int sort_compare_fn(const void* p1, const void* p2)
static int sort_playlist_unlocked(struct playlist_info* playlist,
bool start_current, bool write)
{
- unsigned int current = playlist->indices[playlist->index];
+ unsigned long current = playlist->indices[playlist->index];
if (playlist->amount > 0)
qsort((void*)playlist->indices, playlist->amount,
--
rockbox-cvs mailing list
rockbox-cvs@lists.haxx.se
https://lists.haxx.se/mailman/listinfo/rockbox-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic