diff options
author | Max Kellermann <max@duempel.org> | 2010-06-25 22:02:58 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2010-06-25 22:43:52 +0200 |
commit | 373d1843a832c67e15ad774b2d1c80534bbf2f0a (patch) | |
tree | 1758be481f213fa33752abd829c429d9e73f2dbb /src | |
parent | 82ee278f539d51a26e5bf4796650d30821ccec58 (diff) | |
download | mpd-373d1843a832c67e15ad774b2d1c80534bbf2f0a.tar.gz mpd-373d1843a832c67e15ad774b2d1c80534bbf2f0a.tar.xz mpd-373d1843a832c67e15ad774b2d1c80534bbf2f0a.zip |
playlist_queue: use playlist_open_any()
Diffstat (limited to 'src')
-rw-r--r-- | src/playlist_queue.c | 50 |
1 files changed, 2 insertions, 48 deletions
diff --git a/src/playlist_queue.c b/src/playlist_queue.c index dd5d0dd4a..635e23a28 100644 --- a/src/playlist_queue.c +++ b/src/playlist_queue.c @@ -19,14 +19,10 @@ #include "config.h" #include "playlist_queue.h" -#include "playlist_list.h" #include "playlist_plugin.h" -#include "playlist_mapper.h" +#include "playlist_any.h" #include "playlist_song.h" -#include "stored_playlist.h" -#include "mapper.h" #include "song.h" -#include "uri.h" #include "input_stream.h" enum playlist_result @@ -56,53 +52,11 @@ playlist_load_into_queue(const char *uri, struct playlist_provider *source, return PLAYLIST_RESULT_SUCCESS; } -static enum playlist_result -playlist_open_remote_into_queue(const char *uri, struct playlist *dest) -{ - GError *error = NULL; - struct playlist_provider *playlist; - struct input_stream *is = NULL; - enum playlist_result result; - - assert(uri_has_scheme(uri)); - - playlist = playlist_list_open_uri(uri); - if (playlist == NULL) { - is = input_stream_open(uri, &error); - if (is == NULL) { - if (error != NULL) { - g_warning("Failed to open %s: %s", - uri, error->message); - g_error_free(error); - } - - return PLAYLIST_RESULT_NO_SUCH_LIST; - } - - playlist = playlist_list_open_stream(is, uri); - if (playlist == NULL) { - input_stream_close(is); - return PLAYLIST_RESULT_NO_SUCH_LIST; - } - } - - result = playlist_load_into_queue(uri, playlist, dest); - playlist_plugin_close(playlist); - - if (is != NULL) - input_stream_close(is); - - return result; -} - enum playlist_result playlist_open_into_queue(const char *uri, struct playlist *dest) { - if (uri_has_scheme(uri)) - return playlist_open_remote_into_queue(uri, dest); - struct input_stream *is; - struct playlist_provider *playlist = playlist_mapper_open(uri, &is); + struct playlist_provider *playlist = playlist_open_any(uri, &is); if (playlist == NULL) return PLAYLIST_RESULT_NO_SUCH_LIST; |