aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/playlist_queue.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/playlist_queue.c b/src/playlist_queue.c
index f31eb9f42..f392ce96a 100644
--- a/src/playlist_queue.c
+++ b/src/playlist_queue.c
@@ -59,17 +59,15 @@ playlist_load_into_queue(struct playlist_provider *source,
return PLAYLIST_RESULT_SUCCESS;
}
-enum playlist_result
-playlist_open_into_queue(const char *uri, struct playlist *dest)
+static enum playlist_result
+playlist_open_remote_into_queue(const char *uri, struct playlist *dest)
{
struct playlist_provider *playlist;
bool stream = false;
struct input_stream is;
enum playlist_result result;
- if (!uri_has_scheme(uri))
- /* don't allow local playlist files for now */
- return PLAYLIST_RESULT_NO_SUCH_LIST;
+ assert(uri_has_scheme(uri));
playlist = playlist_list_open_uri(uri);
if (playlist == NULL) {
@@ -92,3 +90,12 @@ playlist_open_into_queue(const char *uri, struct playlist *dest)
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);
+ else
+ return PLAYLIST_RESULT_NO_SUCH_LIST;
+}