[gdm-list] [PATCH] fix gdmflexiserver



hi,

commit http://git.gnome.org/browse/gdm/commit/?id=0e6f294c34a4222af0e0540ab124a57269c35b09

broke gdmflexiserver, the attached patch fixes this.

The 'ret' local in goto_login_session is used as a status flag, so assigning it the new return value of get_login_window_session_id breaks the remaining part of the function.

Assigning NULL to session_id in get_login_window_session_id() and then dereferencing it doesn't look right either.


    Christiaan
diff -up gdm-3.1.2/utils/gdmflexiserver.c.bak gdm-3.1.2/utils/gdmflexiserver.c
--- gdm-3.1.2/utils/gdmflexiserver.c.bak	2011-07-17 12:47:23.369570836 +0200
+++ gdm-3.1.2/utils/gdmflexiserver.c	2011-07-17 12:47:37.449431810 +0200
@@ -617,7 +617,7 @@ get_login_window_session_id (DBusConnect
         char      **sessions;
         int         i;
 
-        session_id = NULL;
+        *session_id = NULL;
         sessions = NULL;
 
         g_debug ("checking if seat can activate sessions");
@@ -682,6 +682,8 @@ goto_login_session (GError **error)
                 g_set_error (error, GDM_FLEXISERVER_ERROR, 1, _("User unable to switch sessions."));
                 return FALSE;
         }
+	
+	ret = FALSE;
 
         if (session_id != NULL) {
                 res = activate_session_id (connection, seat_id, session_id);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]