diff options
author | Alexey Yakovenko <wakeroid@gmail.com> | 2010-05-01 20:29:15 +0200 |
---|---|---|
committer | Alexey Yakovenko <wakeroid@gmail.com> | 2010-05-01 20:29:15 +0200 |
commit | 95c829fb75ed7c4ecb933073f5ed59d2b647c7f4 (patch) | |
tree | 483198cc93c669979bd82ec8134813cfb34f0a93 | |
parent | 76a27d6a8ffcc8d6ca608e674a78115cdf14b6ec (diff) |
fixed decoder error handling regressions in streamer
-rw-r--r-- | streamer.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -660,6 +660,7 @@ static void streamer_start_new_song (void) { trace ("nextsong=%d\n", nextsong); int sng = nextsong; + int initsng = nextsong; int pstate = nextsong_pstate; nextsong = -1; src_remaining = 0; @@ -700,13 +701,13 @@ streamer_start_new_song (void) { } trace ("\033[0;34mbadsong=%d\033[37;0m\n", badsong); // try jump to next song - if (nextsong == sng) { + if (nextsong == -1) { streamer_move_to_nextsong (0); trace ("streamer_move_to_nextsong switched to track %d\n", nextsong); usleep (50000); } else { - trace ("nextsong changed to %d by another thread, reinit\n", nextsong); + trace ("nextsong changed from %d to %d by another thread, reinit\n", initsng, nextsong); badsong = -1; } return; |