diff options
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/emms-source-playlist.el | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lisp/emms-source-playlist.el b/lisp/emms-source-playlist.el index b7677ec..0bcc548 100644 --- a/lisp/emms-source-playlist.el +++ b/lisp/emms-source-playlist.el @@ -342,8 +342,12 @@ they have absolute paths." (mapcar (lambda (file) (if (string-match "\\`\\(http\\|mms\\)://" file) (emms-track 'url file) - (emms-track 'file (expand-file-name file dir)))) - (emms-source-playlist-pls-files)))) + (if (string-match "\\`file://" file) ;; handle file:// uris + (let ((file (url-unhex-string (substring file 7)))) + (emms-track 'file file)) + (emms-track 'file (expand-file-name file dir))))) + (emms-source-playlist-pls-files)))) + (defun emms-source-playlist-pls-files () "Extract a list of filenames from the given pls playlist. |