dmo60/lLyrics

RB3 interface hangs as soon as lyrics are not found

Neptilo opened this issue · 5 comments

Hello,

I just tried the latest version of lLyrics with Rhythmbox 3.0.2, on Ubuntu 14.04.

The plugin seems to be working fine, until RB plays a song whose lyrics can't be found in any source. Then it seems to search for lyrics forever and makes the interface hang every 10 seconds. This goes on even when playing the next songs (whose lyrics can be found).

After disabling the plugin, the console prints a long list of output, made up of those three errors, repeating themselves over and over:

Traceback (most recent call last):
  File "/usr/lib/rhythmbox/plugins/lLyrics/lLyrics.py", line 782, in set_displayed_text
    self.textbuffer.set_text(text)
AttributeError: 'NoneType' object has no attribute 'set_text'

Traceback (most recent call last):
  File "/usr/lib/rhythmbox/plugins/lLyrics/lLyrics.py", line 445, in set_menu_sensitive
    for item in self.menu:
TypeError: 'NoneType' object is not iterable

Traceback (most recent call last):
  File "/usr/lib/rhythmbox/plugins/lLyrics/lLyrics.py", line 932, in show_lyrics
    self.textbuffer.set_text("%s - %s\n%s" % (self.artist, self.title, lyrics))
AttributeError: 'NoneType' object has no attribute 'set_text'

Sometimes it just makes every next song stop after one second, without causing the interface to hang. I have to click on the seek bar for the song to continue to play.

Thanks for reporting!

I can't reproduce this on my Archlinux setup. Is this always happening when no lyrics are found or only sometimes?

Oh, correction! Now I can see it, but it only occurs with english locales. That's strange, I'll try to fix it...

Ok, I hope I've fixed it. It actually did happen with other locales, too. So it didn't have to do anything with that, but with some kind of race condition introduced by one of my latest commits.

Please grab the latest code now and let me know, if you still face this issue!

Thank you! I don't seem to experience the bug anymore.

Btw, very good work you did with this plugin!