]> rtime.felk.cvut.cz Git - sojka/lightdm.git/commitdiff
Fix lightdm_greeter_start_session_sync () blocking on success
authorRobert Ancell <robert.ancell@canonical.com>
Mon, 6 Feb 2012 05:16:14 +0000 (16:16 +1100)
committerRobert Ancell <robert.ancell@canonical.com>
Mon, 6 Feb 2012 05:16:14 +0000 (16:16 +1100)
src/greeter.c
src/greeter.h

index bbf8579f73d6eb906f4bec8d3ba70ccf1ca7304b..28ff3b7fb7612af34f76af6417c0a78fd5e8080e 100644 (file)
@@ -397,6 +397,8 @@ static void
 handle_start_session (Greeter *greeter, const gchar *session)
 {
     gboolean result;
+    guint8 message[MAX_MESSAGE_LENGTH];
+    gsize offset = 0;
 
     if (strcmp (session, "") == 0)
         session = NULL;
@@ -415,15 +417,9 @@ handle_start_session (Greeter *greeter, const gchar *session)
         result = FALSE;
     }
 
-    if (!result)
-    {
-        guint8 message[MAX_MESSAGE_LENGTH];
-        gsize offset = 0;
-
-        write_header (message, MAX_MESSAGE_LENGTH, SERVER_MESSAGE_SESSION_RESULT, int_length (), &offset);
-        write_int (message, MAX_MESSAGE_LENGTH, 1, &offset);
-        write_message (greeter, message, offset);
-    }
+    write_header (message, MAX_MESSAGE_LENGTH, SERVER_MESSAGE_SESSION_RESULT, int_length (), &offset);
+    write_int (message, MAX_MESSAGE_LENGTH, result ? 0 : 1, &offset);
+    write_message (greeter, message, offset);
 }
 
 static void
@@ -644,19 +640,6 @@ greeter_get_authentication (Greeter *greeter)
     return greeter->priv->authentication;
 }
 
-void
-greeter_quit (Greeter *greeter)
-{
-    guint8 message[MAX_MESSAGE_LENGTH];
-    gsize offset = 0;
-
-    g_return_if_fail (greeter != NULL);
-
-    write_header (message, MAX_MESSAGE_LENGTH, SERVER_MESSAGE_SESSION_RESULT, int_length (), &offset);
-    write_int (message, MAX_MESSAGE_LENGTH, 0, &offset);
-    write_message (greeter, message, offset);
-}
-
 static PAMSession *
 greeter_real_start_authentication (Greeter *greeter, const gchar *username)
 {
index 9d9a7f3ee9bffbc6fdca1a255dc45fc3b3d3e63f..4694698ed85799d58a2112f8d264ecacde8b51d2 100644 (file)
@@ -50,8 +50,6 @@ gboolean greeter_get_guest_authenticated (Greeter *greeter);
 
 PAMSession *greeter_get_authentication (Greeter *greeter);
 
-void greeter_quit (Greeter *greeter);
-
 G_END_DECLS
 
 #endif /* _GREETER_H_ */