]> kaliko git repositories - mpd-sima.git/commitdiff
Fixed search_albums again
authorkaliko <kaliko@azylum.org>
Tue, 16 Dec 2014 22:44:40 +0000 (23:44 +0100)
committerkaliko <kaliko@azylum.org>
Tue, 16 Dec 2014 22:44:40 +0000 (23:44 +0100)
sima/client.py

index b8ccea522a2ee62993ee22beb42b631120e42c4a..0a7f754bfdb03dfeb47de52bb16647f1e0409714 100644 (file)
@@ -195,15 +195,20 @@ class PlayerClient(Player):
         found = False
         if artist.mbid:
             # look for exact search w/ musicbrainz_artistid
-            [artist.add_alias(name) for name in
-                    self._client.list('artist', 'musicbrainz_artistid', artist.mbid)]
-            if artist.aliases:
+            exact_m = self._client.list('artist', 'musicbrainz_artistid', artist.mbid)
+            if exact_m:
+                [artist.add_alias(name) for name in exact_m]
                 found = True
         else:
             artist = Artist(name=artist.name)
         # then complete with fuzzy search on artist with no musicbrainz_artistid
-        nombid_artists = self._cache.get('nombid_artists', [])
-        match = get_close_matches(artist.name, nombid_artists, 50, 0.73)
+        if artist.mbid:
+            # we already performed a lookup on artists with mbid set
+            # search through remaining artists
+            artists = self._cache.get('nombid_artists', [])
+        else:
+            artists = self._cache.get('artists', [])
+        match = get_close_matches(artist.name, artists, 50, 0.73)
         if not match and not found:
             return
         if len(match) > 1: