]> kaliko git repositories - mpd-sima.git/commitdiff
Fix generator expiration
authorkaliko <efrim@azylum.org>
Fri, 1 Nov 2013 10:52:38 +0000 (11:52 +0100)
committerkaliko <efrim@azylum.org>
Fri, 1 Nov 2013 10:52:38 +0000 (11:52 +0100)
sima/plugins/lastfm.py

index ec612eed10edf10cc90804aca45565fa9afb1253..751b2c32ede2eb70957344697f686f1456ec4379 100644 (file)
@@ -36,15 +36,17 @@ def cache(func):
     return wrapper
 
 def blacklist(artist=False, album=False, track=False):
-    field = (bl for bl in (artist, album, track))
+    #pylint: disable=C0111,W0212
+    field = (artist, album, track)
     def decorated(func):
         def wrapper(*args, **kwargs):
             cls = args[0]
+            boolgen = (bl for bl in field)
             bl_fun = (cls._Plugin__daemon.sdb.get_bl_artist,
                       cls._Plugin__daemon.sdb.get_bl_album,
                       cls._Plugin__daemon.sdb.get_bl_track,)
-            #bl_getter = next(fn for fn, bl in zip(bl_fun, field) if bl is True)
-            bl_getter = next(dropwhile(lambda _: not next(field), bl_fun))
+            #bl_getter = next(fn for fn, bl in zip(bl_fun, boolgen) if bl is True)
+            bl_getter = next(dropwhile(lambda _: not next(boolgen), bl_fun))
             results = func(*args, **kwargs)
             cls.log.debug('using {0} as bl filter'.format(bl_getter.__name__))
             for elem in results: