From c225eea4edfb8cf8ede845cc6f9b7e858aabe6e8 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Sat, 26 Feb 2011 14:44:52 +0100 Subject: Always add song to history --- src/main.c | 38 +++----------------------------------- 1 file changed, 3 insertions(+), 35 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index 3104898..6886afc 100644 --- a/src/main.c +++ b/src/main.c @@ -157,40 +157,6 @@ static void BarMainHandleUserInput (BarApp_t *app) { } } -/* append current song to history list and move to the next song - */ -static void BarMainNextSong (BarApp_t *app) { - if (app->settings.history != 0) { - /* prepend song to history list */ - PianoSong_t *tmpSong = app->songHistory; - app->songHistory = app->playlist; - /* select next song */ - app->playlist = app->playlist->next; - app->songHistory->next = tmpSong; - - /* limit history's length */ - /* start with 1, so we're stopping at n-1 and have the - * chance to set ->next = NULL */ - unsigned int i = 1; - tmpSong = app->songHistory; - while (i < app->settings.history && tmpSong != NULL) { - tmpSong = tmpSong->next; - ++i; - } - /* if too many songs in history... */ - if (tmpSong != NULL) { - PianoSong_t *delSong = tmpSong->next; - tmpSong->next = NULL; - if (delSong != NULL) { - PianoDestroyPlaylist (delSong); - } - } - } else { - /* don't keep history */ - app->playlist = app->playlist->next; - } -} - /* fetch new playlist */ static void BarMainGetPlaylist (BarApp_t *app) { @@ -338,7 +304,9 @@ static void BarMainLoop (BarApp_t *app) { if (app->curStation != NULL) { /* what's next? */ if (app->playlist != NULL) { - BarMainNextSong (app); + PianoSong_t *histsong = app->playlist; + app->playlist = app->playlist->next; + BarUiHistoryPrepend (app, histsong); } if (app->playlist == NULL) { BarMainGetPlaylist (app); -- cgit v1.2.3