From bfd34eb9e0ef66d0160629d36a876fd1136346d7 Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Wed, 5 May 2010 23:05:22 +0200 Subject: [PATCH] Fix gstreamer stored playlist controller with respect to tracks that don't exist in library (and test stub for issue) --- mopidy/backends/gstreamer.py | 5 ++++- tests/backends/base.py | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/mopidy/backends/gstreamer.py b/mopidy/backends/gstreamer.py index 30cffa6d..3d6a8fdd 100644 --- a/mopidy/backends/gstreamer.py +++ b/mopidy/backends/gstreamer.py @@ -132,7 +132,10 @@ class GStreamerStoredPlaylistsController(BaseStoredPlaylistsController): name = os.path.basename(m3u)[:len('.m3u')] tracks = [] for uri in parse_m3u(m3u): - tracks.append(self.backend.library.lookup(uri)) + try: + tracks.append(self.backend.library.lookup(uri)) + except LookupError, e: + logger.error('Playlist item could not be added: %s', e) playlist = Playlist(tracks=tracks, name=name) # FIXME playlist name needs better handling diff --git a/tests/backends/base.py b/tests/backends/base.py index 1bb9b50f..dfc8a4a4 100644 --- a/tests/backends/base.py +++ b/tests/backends/base.py @@ -1074,6 +1074,9 @@ class BaseStoredPlaylistsControllerTest(object): self.stored.save(playlist) self.assert_(playlist in self.stored.playlists) + def test_playlist_with_unknown_track(self): + raise SkipTest + class BaseLibraryControllerTest(object): artists = [Artist(name='artist1'), Artist(name='artist2'), Artist()]