summaryrefslogtreecommitdiff
path: root/streamer.c
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-09-16 20:09:45 +0200
committerGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-09-16 20:09:45 +0200
commit52666d10b9539108dca00c8f35da461592c2879d (patch)
tree5f774a58ba56d8b50ff412c6a03ac9950c329a00 /streamer.c
parent788bf7b75397cd77786d027581f368d9e46fabff (diff)
avoid playing same song twice in random play mode
Diffstat (limited to 'streamer.c')
-rw-r--r--streamer.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/streamer.c b/streamer.c
index e5f2c238..0e690da5 100644
--- a/streamer.c
+++ b/streamer.c
@@ -506,7 +506,14 @@ streamer_move_to_randomsong (void) {
trace ("empty playlist\n");
return -1;
}
+ int curr = str_get_idx_of (playing_track);
int r = rand () / (float)RAND_MAX * cnt;
+ if (r == curr) {
+ r++;
+ if (r >= cnt) {
+ r = 0;
+ }
+ }
streamer_set_nextsong (r, 1);
return 0;
}