From b616dff77d8e0d7a930327007690444a356dcbf3 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 26 Aug 2008 08:44:34 +0200 Subject: no commandError() in playerSeek() We should avoid having protocol specific code in player.c. Just return success or failure, and let the caller send the error code to the MPD client. --- src/playlist.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/playlist.c') diff --git a/src/playlist.c b/src/playlist.c index 8ffd56684..4560b85a5 100644 --- a/src/playlist.c +++ b/src/playlist.c @@ -1354,7 +1354,7 @@ int getPlaylistLength(void) int seekSongInPlaylist(int fd, int song, float seek_time) { - int i; + int i, ret; if (song < 0 || song >= playlist.length) { commandError(fd, ACK_ERROR_NO_EXIST, @@ -1381,7 +1381,11 @@ int seekSongInPlaylist(int fd, int song, float seek_time) playPlaylistOrderNumber(i); } - return playerSeek(fd, playlist.songs[playlist.order[i]], seek_time); + ret = playerSeek(playlist.songs[playlist.order[i]], seek_time); + if (ret < 0) + commandError(fd, ACK_ERROR_PLAYER_SYNC, + "player not currently playing"); + return ret; } int seekSongInPlaylistById(int fd, int id, float seek_time) -- cgit v1.2.3