Diff between 76a712da75ef75ec26a98654c72f809f8cb64d29 and 6d73ad9a1cdc11d4f0159b4610312d68ffc71f20
Changed Files
| File | Additions | Deletions | Status |
| src/main.c | +8 | -0 | modified |
Full Patch
diff --git a/src/main.c b/src/main.c
index a0d6c6f..34c74ec 100644
--- a/src/main.c
+++ b/src/main.c
@@ -395,6 +395,12 @@ static void disconnect_dbus(void)
dbus_connection_unref(conn);
}
+static void disconnected_dbus(DBusConnection *conn, void *data)
+{
+ info("Disconnected from D-Bus. Exiting.");
+ g_main_loop_quit(event_loop);
+}
+
static int connect_dbus(void)
{
DBusConnection *conn;
@@ -417,6 +423,8 @@ static int connect_dbus(void)
set_dbus_connection(conn);
+ g_dbus_set_disconnect_function(conn, disconnected_dbus, NULL, NULL);
+
return 0;
}