diff --git a/docs/changes.rst b/docs/changes.rst index 082ad136..77d72383 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -71,6 +71,8 @@ v0.8 (in development) - Created a Spotify track proxy that will switch to using loaded data as soon as it becomes available. Fixes :issue:`72`. +- Fixed crash on lookup of unknown path when using local backend. + v0.7.3 (2012-08-11) =================== diff --git a/mopidy/backends/local/__init__.py b/mopidy/backends/local/__init__.py index 1b1f9730..263d2fc2 100644 --- a/mopidy/backends/local/__init__.py +++ b/mopidy/backends/local/__init__.py @@ -203,7 +203,8 @@ class LocalLibraryProvider(BaseLibraryProvider): try: return self._uri_mapping[uri] except KeyError: - raise LookupError('%s not found.' % uri) + logger.debug(u'Failed to lookup "%s"', uri) + return None def find_exact(self, **query): self._validate_query(query) diff --git a/tests/backends/base/library.py b/tests/backends/base/library.py index 4b3ef5c0..f76d9d75 100644 --- a/tests/backends/base/library.py +++ b/tests/backends/base/library.py @@ -34,8 +34,8 @@ class LibraryControllerTest(object): self.assertEqual(track, self.tracks[0]) def test_lookup_unknown_track(self): - test = lambda: self.library.lookup('fake uri') - self.assertRaises(LookupError, test) + track = self.library.lookup('fake uri') + self.assertEquals(track, None) def test_find_exact_no_hits(self): result = self.library.find_exact(track=['unknown track'])