aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2008-10-29 17:28:49 +0100
committerMax Kellermann <max@duempel.org>2008-10-29 17:28:49 +0100
commitc042faab42e0a2b2c6e25d7e1a84084ffc181d20 (patch)
treee71ac5e96cbb0d46f82f0cb1fdd7f36694d38541
parentbe90199c5ace71eb3411294159fec6adcc0d4404 (diff)
downloadmpd-c042faab42e0a2b2c6e25d7e1a84084ffc181d20.tar.gz
mpd-c042faab42e0a2b2c6e25d7e1a84084ffc181d20.tar.xz
mpd-c042faab42e0a2b2c6e25d7e1a84084ffc181d20.zip
player: request new song only if there is no pending command
Request the next song from the playlist (by clearing pc.next_song) only if the player command is empty. If it is not, the player may be clearing the song that has already been queued, leading to an assertion failure.
-rw-r--r--src/player_thread.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/player_thread.c b/src/player_thread.c
index af016df60..c06be3d82 100644
--- a/src/player_thread.c
+++ b/src/player_thread.c
@@ -314,7 +314,8 @@ static void do_play(void)
}
if (decoder_is_idle() && !player.queued &&
- pc.next_song != NULL) {
+ pc.next_song != NULL &&
+ pc.command == PLAYER_COMMAND_NONE) {
/* the decoder has finished the current song;
request the next song from the playlist */
pc.next_song = NULL;