From f3b09e4ef2cf713cfc00c9f1fd0ab129fa9c6b83 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sat, 16 Nov 2013 00:20:49 +0100 Subject: [PATCH] zeroconf: Catch DBusException from AddService Fixes #576 --- mopidy/utils/zeroconf.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/mopidy/utils/zeroconf.py b/mopidy/utils/zeroconf.py index 56fd3c07..a85fddbe 100644 --- a/mopidy/utils/zeroconf.py +++ b/mopidy/utils/zeroconf.py @@ -66,11 +66,15 @@ class Zeroconf(object): bus.get_object('org.freedesktop.Avahi', server.EntryGroupNew()), 'org.freedesktop.Avahi.EntryGroup') - text = [_convert_text_to_dbus_bytes(t) for t in self.text] - self.group.AddService(_AVAHI_IF_UNSPEC, _AVAHI_PROTO_UNSPEC, - dbus.UInt32(_AVAHI_PUBLISHFLAGS_NONE), - self.name, self.stype, self.domain, self.host, - dbus.UInt16(self.port), text) + try: + text = [_convert_text_to_dbus_bytes(t) for t in self.text] + self.group.AddService( + _AVAHI_IF_UNSPEC, _AVAHI_PROTO_UNSPEC, + dbus.UInt32(_AVAHI_PUBLISHFLAGS_NONE), self.name, self.stype, + self.domain, self.host, dbus.UInt16(self.port), text) + except dbus.exceptions.DBusException as e: + logger.debug('Zeroconf publish failed: %s', e) + return False self.group.Commit() return True