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.
This commit is contained in:
Max Kellermann 2008-09-07 13:57:26 +02:00
parent dc8b64fdef
commit f59986fad5
3 changed files with 5 additions and 5 deletions

View File

@ -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);
}

View File

@ -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);
}

View File

@ -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);