[Python-apps-commits] r7358 - in packages/sonata/trunk/debian (3 files)

vicho-guest at users.alioth.debian.org vicho-guest at users.alioth.debian.org
Mon Jul 25 21:53:12 UTC 2011


    Date: Monday, July 25, 2011 @ 21:53:11
  Author: vicho-guest
Revision: 7358

Fix #631375

Fix ""Fetching lyrics failed" even if there's a lyrics online" with a
patch provided by Stefan Fleischmann.

Added:
  packages/sonata/trunk/debian/patches/fix-lyrics-fetching.patch
Modified:
  packages/sonata/trunk/debian/changelog
  packages/sonata/trunk/debian/patches/series

Modified: packages/sonata/trunk/debian/changelog
===================================================================
--- packages/sonata/trunk/debian/changelog	2011-07-25 21:53:02 UTC (rev 7357)
+++ packages/sonata/trunk/debian/changelog	2011-07-25 21:53:11 UTC (rev 7358)
@@ -8,8 +8,11 @@
   [ Javi Merino ]
   * New maintainer. (Closes: #612910: RFA: sonata -- GTK+ client for the
     Music Player Daemon (MPD))
+  * Fix ""Fetching lyrics failed" even if there's a lyrics online"
+    with a patch provided by Stefan Fleischmann <ck850 at web.de> (Closes:
+    #631375)
 
- -- Javi Merino <cibervicho at gmail.com>  Sun, 24 Jul 2011 16:52:10 +0200
+ -- Javi Merino <cibervicho at gmail.com>  Mon, 25 Jul 2011 15:34:54 +0200
 
 sonata (1.6.2.1-3) unstable; urgency=low
 

Added: packages/sonata/trunk/debian/patches/fix-lyrics-fetching.patch
===================================================================
--- packages/sonata/trunk/debian/patches/fix-lyrics-fetching.patch	                        (rev 0)
+++ packages/sonata/trunk/debian/patches/fix-lyrics-fetching.patch	2011-07-25 21:53:11 UTC (rev 7358)
@@ -0,0 +1,42 @@
+Description: Problems downloading lyrics from lyrics.wikia.com
+Origin: http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=15;filename=fix-lyrics-fetching.patch;att=1;bug=631375
+Author: Stefan Fleischmann <ck850 at web.de>
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=631375
+Forwarded: no
+
+--- a/sonata/info.py
++++ b/sonata/info.py
+@@ -350,7 +350,7 @@
+ 	def lyricwiki_editlink(self, songinfo):
+ 		artist, title = [self.lyricwiki_format(mpdh.get(songinfo, key))
+ 				 for key in ('artist', 'title')]
+-		return "http://lyricwiki.org/index.php?title=%s:%s&action=edit" % (artist, title)
++		return "http://lyrics.wikia.com/index.php?title=%s:%s&action=edit" % (artist, title)
+ 
+ 	def get_lyrics_thread(self, search_artist, search_title, filename_artist, filename_title, song_dir):
+ 		filename_artist = misc.strip_all_slashes(filename_artist)
+@@ -385,17 +385,18 @@
+ 		else:
+ 			# Use default filename:
+ 			filename = self.target_lyrics_filename(filename_artist, filename_title, song_dir)
+-			# Fetch lyrics from lyricwiki.org
++			# Fetch lyrics from lyrics.wikia.com (formerly lyricwiki.org)
+ 			gobject.idle_add(self.info_show_lyrics, _("Fetching lyrics..."), filename_artist, filename_title)
+ 			try:
+-				lyricpage = urllib.urlopen("http://lyricwiki.org/index.php?title=%s:%s&action=edit" % (self.lyricwiki_format(search_artist), self.lyricwiki_format(search_title))).read()
++				lyricpage = urllib.urlopen("http://lyrics.wikia.com/index.php?title=%s:%s&action=edit" % (self.lyricwiki_format(search_artist), self.lyricwiki_format(search_title))).read()
+ 				content = re.split("<textarea[^>]*>", lyricpage)[1].split("</textarea>")[0]
+ 				if content.startswith("#REDIRECT [["):
+-					addr = "http://lyricwiki.org/index.php?title=%s&action=edit" % urllib.quote(content.split("[[")[1].split("]]")[0])
++					addr = "http://lyrics.wikia.com/index.php?title=%s&action=edit" % urllib.quote(content.split("[[")[1].split("]]")[0])
+ 					content = urllib.urlopen(addr).read()
+-				lyrics = content.split("<lyrics>")[1].split("</lyrics>")[0]
+-				if lyrics.strip() != "<!-- PUT LYRICS HERE (and delete this entire line) -->":
+-					lyrics = misc.unescape_html(lyrics)
++				# To avoid problems with mixed escaped/unescaped characters unescape before extracting lyrics (fixes bug #631375)
++				content = misc.unescape_html(content)
++				lyrics = content.split("<lyrics>")[1].split("</lyrics>")[0]
++				if lyrics.strip() != "<!-- PUT LYRICS HERE (and delete this entire line) -->":
+ 					lyrics = misc.wiki_to_html(lyrics)
+ 					lyrics = lyrics.decode("utf-8")
+ # Save lyrics to file:

Modified: packages/sonata/trunk/debian/patches/series
===================================================================
--- packages/sonata/trunk/debian/patches/series	2011-07-25 21:53:02 UTC (rev 7357)
+++ packages/sonata/trunk/debian/patches/series	2011-07-25 21:53:11 UTC (rev 7358)
@@ -1 +1,2 @@
 fix-cras-on-no-albums.patch
+fix-lyrics-fetching.patch




More information about the Python-apps-commits mailing list