aboutsummaryrefslogtreecommitdiff
path: root/data/usr/bin/ayatana-webmail-settings
diff options
context:
space:
mode:
Diffstat (limited to 'data/usr/bin/ayatana-webmail-settings')
-rwxr-xr-xdata/usr/bin/ayatana-webmail-settings30
1 files changed, 12 insertions, 18 deletions
diff --git a/data/usr/bin/ayatana-webmail-settings b/data/usr/bin/ayatana-webmail-settings
index 63db1f7..1f53914 100755
--- a/data/usr/bin/ayatana-webmail-settings
+++ b/data/usr/bin/ayatana-webmail-settings
@@ -6,7 +6,6 @@
import sys
import dbus
-import subprocess
from gi.repository import GLib
from dbus.mainloop.glib import DBusGMainLoop
from ayatanawebmail.common import isRunning
@@ -15,33 +14,28 @@ oLoop = None
if __name__ == '__main__':
- # HACK: Debian reports that ayatana-webmail-settings is not running, but shows two instances of ayatana-webmail
- if isRunning('-settings') == 1 or isRunning() == 2:
+ if isRunning():
DBusGMainLoop(set_as_default=True)
oSessionBus = dbus.SessionBus()
- if isRunning():
+ try:
- try:
+ oSession = oSessionBus.get_object('org.ayatana.webmail', '/org/ayatana/webmail')
+ oInterface = dbus.Interface(oSession, 'org.ayatana.webmail')
- oSession = oSessionBus.get_object('org.ayatana.webmail', '/org/ayatana/webmail')
- oInterface = dbus.Interface(oSession, 'org.ayatana.webmail')
+ oInterface.settings(reply_handler=lambda: oLoop.quit(), error_handler=lambda o: oLoop.quit())
- oInterface.settings(reply_handler=lambda: oLoop.quit(), error_handler=lambda o: oLoop.quit())
-
- oLoop = GLib.MainLoop()
- oLoop.run()
-
- except dbus.DBusException as oDBusException:
+ oLoop = GLib.MainLoop()
+ oLoop.run()
+ sys.exit(0)
- print(oDBusException)
- sys.exit(1)
+ except dbus.DBusException as oDBusException:
- sys.exit(0)
+ print(oDBusException)
- else:
+ else:
- subprocess.Popen(['ayatana-webmail'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
+ print("Cannot start ayatana-webmail-settings - Ayatana Webmail is not running.")
sys.exit(1)