[Python-apps-team] Bug#728704: sonata: missing crossfade in status breaks sonata (mpd >=0.18)

Mattia Dongili malattia at debian.org
Mon Nov 4 12:52:29 UTC 2013


Package: sonata
Version: 1.6.2.1-5
Severity: important
Tags: patch

Hi,
using MPD from unstable (>=0.18) broke sonata.
Sonata sadly displays a "No Read Permissions" instead of any more
appropriate error or even logging the actual exception causing it to
think it doesn't have permissions.

The patch below fixes the problem (well one could also set crossfade to
1 ;)).
Note that there is an extra hunk (which should be better split in a
separate patch or dropped altogether if it's not a problem) that assigns
what seems to be the correct value to prevconn. Looking around main.py
prevconn and conn should be the same type and are compared all over the
place except that at some point prevconn is assigned client... Your
option to drop it, the problem I have is fixed by checking if 'xfade'
was returned in the status command.

And I almost forgot, thanks for maintaining sonata, I have tried a few
graphical clients and it's way better than anything else.

--- sonata-1.6.2.1/sonata/main.py	2009-09-22 06:02:16.000000000 +0900
+++ sonata-1.6.2.1.orig/sonata/main.py	2013-11-04 21:36:52.772259153 +0900
@@ -989,7 +989,7 @@ class Base(object):
 						self.repeatmenu.set_active(self.status['repeat'] == '1')
 					if not self.last_random or self.last_random != self.status['random']:
 						self.randommenu.set_active(self.status['random'] == '1')
-					if self.status['xfade'] == '0':
+					if not 'xfade' in self.status or self.status['xfade'] == '0':
 						self.config.xfade_enabled = False
 					else:
 						self.config.xfade_enabled = True
@@ -1001,7 +1001,7 @@ class Base(object):
 					return
 		except:
 			pass
-		self.prevconn = self.client
+		self.prevconn = self.conn
 		self.prevstatus = self.status
 		self.prevsonginfo = self.songinfo
 		self.conn = False
--- 
mattia


-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (1001, 'unstable'), (1001, 'testing'), (1001, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.11.2+ (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages sonata depends on:
ii  python       2.7.5-5
ii  python-dbus  1.2.0-2+b1
ii  python-gtk2  2.24.0-3+b1
ii  python-mpd   0.3.0-4
ii  python2.6    2.6.8-2
ii  python2.7    2.7.5-8

Versions of packages sonata recommends:
ii  python-eggtrayicon  2.25.3-12
ii  python-tagpy        2013.1-3+b1

Versions of packages sonata suggests:
pn  python-mmkeys  <none>

-- no debconf information



More information about the Python-apps-team mailing list