From 706614b0d77b665805f78da24681af13454de774 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Mon, 29 Jun 2009 22:27:57 +0200 Subject: playlist_state: don't save "current" song when none is set This patch fixes an assertion failure: Assertion `order < queue->length' failed. This happens when the state file is saved, when there is no "current" song: current==-1, and queue_order_to_position(-1) is called. --- src/playlist_state.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/playlist_state.c b/src/playlist_state.c index 9530b7d36..c9d3303ac 100644 --- a/src/playlist_state.c +++ b/src/playlist_state.c @@ -68,9 +68,11 @@ playlist_state_save(FILE *fp, const struct playlist *playlist) getPlayerElapsedTime()); } else { fprintf(fp, "%s\n", PLAYLIST_STATE_FILE_STATE_STOP); - fprintf(fp, "%s%i\n", PLAYLIST_STATE_FILE_CURRENT, + + if (playlist->current >= 0) + fprintf(fp, "%s%i\n", PLAYLIST_STATE_FILE_CURRENT, queue_order_to_position(&playlist->queue, - playlist->current)); + playlist->current)); } fprintf(fp, "%s%i\n", PLAYLIST_STATE_FILE_RANDOM, -- cgit v1.2.3