Dominique Leuenberger
65545c759a
- Add gnome-session-exit-when-lost-name-on-bus.patch: gnome-session exit immediately when lost name on bus (bsc#1175622 glgo!GNOME/gnome-session!60, bsc#1188882). OBS-URL: https://build.opensuse.org/request/show/909263 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-session?expand=0&rev=333
39 lines
1.3 KiB
Diff
39 lines
1.3 KiB
Diff
diff --git a/gnome-session/gsm-manager.c b/gnome-session/gsm-manager.c
|
|
index 6839a02d..67b09d8a 100644
|
|
--- a/gnome-session/gsm-manager.c
|
|
+++ b/gnome-session/gsm-manager.c
|
|
@@ -1802,6 +1802,14 @@ gsm_manager_set_failsafe (GsmManager *manager,
|
|
manager->priv->failsafe = enabled;
|
|
}
|
|
|
|
+gboolean
|
|
+gsm_manager_get_dbus_disconnected (GsmManager *manager)
|
|
+{
|
|
+ g_return_val_if_fail (GSM_IS_MANAGER (manager), FALSE);
|
|
+
|
|
+ return manager->priv->dbus_disconnected;
|
|
+}
|
|
+
|
|
gboolean
|
|
gsm_manager_get_failsafe (GsmManager *manager)
|
|
{
|
|
diff --git a/gnome-session/main.c b/gnome-session/main.c
|
|
index 01f56667..51ea6975 100644
|
|
--- a/gnome-session/main.c
|
|
+++ b/gnome-session/main.c
|
|
@@ -83,8 +83,12 @@ on_name_lost (GDBusConnection *connection,
|
|
gpointer data)
|
|
{
|
|
if (connection == NULL) {
|
|
- g_warning ("Lost name on bus: %s", name);
|
|
- gsm_fail_whale_dialog_we_failed (TRUE, TRUE, NULL);
|
|
+ if (gsm_manager_get_dbus_disconnected (manager))
|
|
+ gsm_quit ();
|
|
+ else {
|
|
+ g_warning ("Lost name on bus: %s", name);
|
|
+ gsm_fail_whale_dialog_we_failed (TRUE, TRUE, NULL);
|
|
+ }
|
|
} else {
|
|
g_debug ("Calling name lost callback function");
|
|
|