aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/command.c16
-rw-r--r--src/playlist.c5
2 files changed, 15 insertions, 6 deletions
diff --git a/src/command.c b/src/command.c
index 6bdfba58b..a11978a6c 100644
--- a/src/command.c
+++ b/src/command.c
@@ -540,13 +540,25 @@ static int handleLoad(int fd, mpd_unused int *permission,
static int handleListPlaylist(int fd, mpd_unused int *permission,
mpd_unused int argc, char *argv[])
{
- return PlaylistInfo(fd, argv[1], 0);
+ int ret;
+
+ ret = PlaylistInfo(fd, argv[1], 0);
+ if (ret == -1)
+ commandError(fd, ACK_ERROR_NO_EXIST, "No such playlist");
+
+ return ret;
}
static int handleListPlaylistInfo(int fd, mpd_unused int *permission,
mpd_unused int argc, char *argv[])
{
- return PlaylistInfo(fd, argv[1], 1);
+ int ret;
+
+ ret = PlaylistInfo(fd, argv[1], 1);
+ if (ret == -1)
+ commandError(fd, ACK_ERROR_NO_EXIST, "No such playlist");
+
+ return ret;
}
static int handleLsInfo(int fd, mpd_unused int *permission,
diff --git a/src/playlist.c b/src/playlist.c
index 107e67588..54ec74a5a 100644
--- a/src/playlist.c
+++ b/src/playlist.c
@@ -1342,11 +1342,8 @@ int PlaylistInfo(int fd, const char *utf8file, int detail)
ListNode *node;
List *list;
- if (!(list = loadStoredPlaylist(utf8file))) {
- commandError(fd, ACK_ERROR_NO_EXIST, "could not open playlist "
- "\"%s\": %s", utf8file, strerror(errno));
+ if (!(list = loadStoredPlaylist(utf8file)))
return -1;
- }
node = list->firstNode;
while (node != NULL) {