Commit f59986fa authored by Max Kellermann's avatar Max Kellermann

playlist: pass struct client to loadPlaylist()

The function loadPlaylist() wants to report incremental errors to the client, for this reason we cannot remove its protocol dependency right now. Instead, make it use the client struct instead of the raw file descriptor.
parent dc8b64fd
......@@ -575,7 +575,7 @@ static int handleLoad(struct client *client, mpd_unused int *permission,
{
enum playlist_result result;
result = loadPlaylist(client_get_fd(client), argv[1]);
result = loadPlaylist(client, argv[1]);
return print_playlist_result(client, result);
}
......
......@@ -1370,7 +1370,7 @@ int PlaylistInfo(struct client *client, const char *utf8file, int detail)
return 0;
}
enum playlist_result loadPlaylist(int fd, const char *utf8file)
enum playlist_result loadPlaylist(struct client *client, const char *utf8file)
{
ListNode *node;
List *list;
......@@ -1391,8 +1391,8 @@ enum playlist_result loadPlaylist(int fd, const char *utf8file)
p++;
}
if ((addToPlaylist(temp, NULL)) != PLAYLIST_RESULT_SUCCESS) {
commandError(fd, ACK_ERROR_PLAYLIST_LOAD,
"can't add file \"%s\"", temp2);
command_error(client, ACK_ERROR_PLAYLIST_LOAD,
"can't add file \"%s\"", temp2);
}
free(temp2);
}
......
......@@ -111,7 +111,7 @@ enum playlist_result swapSongsInPlaylist(int song1, int song2);
enum playlist_result swapSongsInPlaylistById(int id1, int id2);
enum playlist_result loadPlaylist(int fd, const char *utf8file);
enum playlist_result loadPlaylist(struct client *client, const char *utf8file);
int getPlaylistRepeatStatus(void);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment