From 6faf04a0560a7865d2c7aa880147236c019d0326 Mon Sep 17 00:00:00 2001
From: Nikos Kouremenos <kourem@gmail.com>
Date: Sun, 17 Dec 2006 11:43:34 +0000
Subject: [PATCH] make sure we use dbus public api so we work for python dbus
 0.80; see #2784

---
 src/common/dbus_support.py      |  4 ++--
 src/common/zeroconf/zeroconf.py |  4 ++--
 src/music_track_listener.py     | 10 ++++++----
 src/notify.py                   |  4 ++--
 4 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/src/common/dbus_support.py b/src/common/dbus_support.py
index d554f7ab23..5a8be077b7 100644
--- a/src/common/dbus_support.py
+++ b/src/common/dbus_support.py
@@ -55,7 +55,7 @@ class SystemBus:
 		if self.system_bus is None:
 			try:
 				self.system_bus = dbus.SystemBus()
-			except dbus.dbus_bindings.DBusException:
+			except dbus.DBusException:
 				self.system_bus = None
 				return False
 			if self.system_bus is None:
@@ -86,7 +86,7 @@ class SessionBus:
 		if self.session_bus is None:
 			try:
 				self.session_bus = dbus.SessionBus()
-			except dbus.dbus_bindings.DBusException:
+			except dbus.DBusException:
 				self.session_bus = None
 				return False
 			if self.session_bus is None:
diff --git a/src/common/zeroconf/zeroconf.py b/src/common/zeroconf/zeroconf.py
index 154694fefa..6a65e622d2 100755
--- a/src/common/zeroconf/zeroconf.py
+++ b/src/common/zeroconf/zeroconf.py
@@ -248,7 +248,7 @@ class Zeroconf:
 
 			return True
 		
-		except dbus.dbus_bindings.DBusException, e:
+		except dbus.DBusException, e:
 			gajim.log.debug(str(e))
 			return False
 			
@@ -279,7 +279,7 @@ class Zeroconf:
 				return True
 			else:
 				return False
-		except dbus.dbus_bindings.DBusException, e:
+		except dbus.DBusException, e:
 			gajim.log.debug("Can't remove service. That should not happen")
 
 	def browse_domain(self, interface, protocol, domain):
diff --git a/src/music_track_listener.py b/src/music_track_listener.py
index 9cffd7a55e..bebecebffc 100644
--- a/src/music_track_listener.py
+++ b/src/music_track_listener.py
@@ -114,9 +114,12 @@ class MusicTrackListener(gobject.GObject):
 
 		bus = dbus.SessionBus()
 
+		if not hasattr(bus, 'name_has_owner'):
+			print 'You need dbus-python >= 0.80' #FIXME: translate me or RM me for .12
+			return None
+
 		## Check Muine playing track
-		if dbus.dbus_bindings.bus_name_has_owner(bus.get_connection(),
-			'org.gnome.Muine'):
+		if bus.name_has_owner('org.gnome.Muine'):
 			obj = bus.get_object('org.gnome.Muine', '/org/gnome/Muine/Player')
 			player = dbus.Interface(obj, 'org.gnome.Muine.Player')
 			if player.GetPlaying():
@@ -126,8 +129,7 @@ class MusicTrackListener(gobject.GObject):
 				return song
 
 		## Check Rhythmbox playing song
-		if dbus.dbus_bindings.bus_name_has_owner(bus.get_connection(),
-			'org.gnome.Rhythmbox'):
+		if bus.name_has_owner('org.gnome.Rhythmbox'):
 			rbshellobj = bus.get_object('org.gnome.Rhythmbox',
 				'/org/gnome/Rhythmbox/Shell')
 			player = dbus.Interface(
diff --git a/src/notify.py b/src/notify.py
index fc1bd08aa9..38024ba20c 100644
--- a/src/notify.py
+++ b/src/notify.py
@@ -288,7 +288,7 @@ def popup(event_type, jid, account, msg_type = '', path_to_image = None,
 			DesktopNotification(event_type, jid, account, msg_type,
 				path_to_image, title, text)
 			return	# sucessfully did D-Bus Notification procedure!
-		except dbus.dbus_bindings.DBusException, e:
+		except dbus.DBusException, e:
 			# Connection to D-Bus failed
 			gajim.log.debug(str(e))
 		except TypeError, e:
@@ -438,7 +438,7 @@ class DesktopNotification:
 
 		self.notif = dbus_support.get_notifications_interface()
 		if self.notif is None:
-			raise dbus.dbus_bindings.DBusException()
+			raise dbus.DBusException('unable to get notifications interface')
 		self.ntype = ntype
 
 		self.get_version()
-- 
GitLab