aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/playlist.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/playlist.c b/src/playlist.c
index 042907e16..a0b1be3e9 100644
--- a/src/playlist.c
+++ b/src/playlist.c
@@ -229,6 +229,16 @@ void showPlaylist(int fd)
}
}
+static void playlist_save(FILE *fp)
+{
+ int i;
+ char path_max_tmp[MPD_PATH_MAX];
+
+ for (i = 0; i < playlist.length; i++)
+ fprintf(fp, "%i:%s\n", i,
+ get_song_url(path_max_tmp, playlist.songs[i]));
+}
+
void savePlaylistState(FILE *fp)
{
fprintf(fp, "%s", PLAYLIST_STATE_FILE_STATE);
@@ -255,8 +265,7 @@ void savePlaylistState(FILE *fp)
fprintf(fp, "%s%i\n", PLAYLIST_STATE_FILE_CROSSFADE,
(int)(getPlayerCrossFade()));
fprintf(fp, "%s\n", PLAYLIST_STATE_FILE_PLAYLIST_BEGIN);
- fflush(fp);
- showPlaylist(fileno(fp));
+ playlist_save(fp);
fprintf(fp, "%s\n", PLAYLIST_STATE_FILE_PLAYLIST_END);
}