summaryrefslogtreecommitdiff
path: root/gtk/gtkapplication.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2012-01-08 02:16:26 -0500
committerMatthias Clasen <mclasen@redhat.com>2012-01-08 02:16:26 -0500
commitf3533e4fc2d31e346d910d165c6ba559cce6c6c1 (patch)
treeed8d7da8b1d262372a4558d80ef9368051c9005f /gtk/gtkapplication.c
parent0191f11a7a72c04ae3100820687b9963d1175f74 (diff)
downloadgtk+-f3533e4fc2d31e346d910d165c6ba559cce6c6c1.tar.gz
Fix the gtk_application_end_session implementation
We were passing the wrong flags, causing the meaning of the request_confirmation parameter to be inverted.
Diffstat (limited to 'gtk/gtkapplication.c')
-rw-r--r--gtk/gtkapplication.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gtk/gtkapplication.c b/gtk/gtkapplication.c
index a31cf59ac7..4331314c4e 100644
--- a/gtk/gtkapplication.c
+++ b/gtk/gtkapplication.c
@@ -1079,6 +1079,7 @@ client_proxy_signal (GDBusProxy *proxy,
else if (strcmp (signal_name, "EndSession") == 0)
{
g_debug ("Received EndSession");
+ app->priv->quit_requested = TRUE;
gtk_application_quit_response (app, TRUE, NULL);
unregister_client (app);
g_signal_emit (app, gtk_application_signals[QUIT], 0);
@@ -1438,7 +1439,7 @@ gtk_application_end_session (GtkApplication *application,
case GTK_APPLICATION_LOGOUT:
g_dbus_proxy_call (application->priv->sm_proxy,
"Logout",
- g_variant_new ("(u)", request_confirmation),
+ g_variant_new ("(u)", request_confirmation ? 0 : 1),
G_DBUS_CALL_FLAGS_NONE,
G_MAXINT,
NULL, NULL, NULL);