}
/* Lock previous sessions */
- if (seat->priv->active_session)
- {
- if (session != seat->priv->active_session && !IS_GREETER (seat->priv->active_session))
- session_lock (seat->priv->active_session);
- g_object_unref (seat->priv->active_session);
- }
+ if (seat->priv->active_session && session != seat->priv->active_session && !IS_GREETER (seat->priv->active_session))
+ session_lock (seat->priv->active_session);
session_activate (session);
+ g_clear_object (&seat->priv->active_session);
seat->priv->active_session = g_object_ref (session);
}
seat_set_externally_activated_session (Seat *seat, Session *session)
{
g_return_if_fail (seat != NULL);
- if (seat->priv->active_session)
- g_object_unref (seat->priv->active_session);
+ g_clear_object (&seat->priv->active_session);
seat->priv->active_session = g_object_ref (session);
}
}
else
{
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (greeter_session);
if (can_share_display_server (seat, session_get_display_server (session)))
if (session == seat->priv->session_to_activate)
{
seat_set_active_session (seat, session);
- g_object_unref (seat->priv->session_to_activate);
- seat->priv->session_to_activate = NULL;
+ g_clear_object (&seat->priv->session_to_activate);
}
else if (seat->priv->active_session)
{
session = find_user_session (seat, greeter_get_active_username (greeter), seat->priv->active_session);
- if (seat->priv->next_session)
- g_object_unref (seat->priv->next_session);
+ g_clear_object (&seat->priv->next_session);
seat->priv->next_session = session ? g_object_ref (session) : NULL;
SEAT_GET_CLASS (seat)->set_next_session (seat, session);
g_signal_handlers_disconnect_matched (session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
seat->priv->sessions = g_list_remove (seat->priv->sessions, session);
if (session == seat->priv->active_session)
- {
- g_object_unref (seat->priv->active_session);
- seat->priv->active_session = NULL;
- }
+ g_clear_object (&seat->priv->active_session);
if (session == seat->priv->next_session)
- {
- g_object_unref (seat->priv->next_session);
- seat->priv->next_session = NULL;
- }
+ g_clear_object (&seat->priv->next_session);
if (session == seat->priv->session_to_activate)
- {
- g_object_unref (seat->priv->session_to_activate);
- seat->priv->session_to_activate = NULL;
- }
+ g_clear_object (&seat->priv->session_to_activate);
display_server = session_get_display_server (session);
if (!display_server)
/* We were waiting for this session, but it didn't start :( */
// FIXME: Start a greeter on this?
if (session == seat->priv->session_to_activate)
- {
- g_object_unref (seat->priv->session_to_activate);
- seat->priv->session_to_activate = NULL;
- }
+ g_clear_object (&seat->priv->session_to_activate);
if (seat->priv->stopping)
{
}
/* Switch to this session when it is ready */
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (session);
/* Return to existing session if it is open */
if (!greeter_session)
return FALSE;
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (greeter_session);
display_server = create_display_server (seat, SESSION (greeter_session));
else
{
l_debug (seat, "Session authenticated, starting display server");
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (session);
display_server = create_display_server (seat, session);
session_set_display_server (session, display_server);
}
else
{
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (greeter_session);
display_server = create_display_server (seat, SESSION (greeter_session));
display_server = create_display_server (seat, session);
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (session);
session_set_pam_service (session, seat_get_string_property (seat, "pam-autologin-service"));
session_set_display_server (session, display_server);
display_server = create_display_server (seat, SESSION (greeter_session));
session_set_display_server (SESSION (greeter_session), display_server);
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (greeter_session);
if (reuse_xserver)
{
- if (seat->priv->replacement_greeter)
- g_object_unref (seat->priv->replacement_greeter);
+ g_clear_object (&seat->priv->replacement_greeter);
seat->priv->replacement_greeter = g_object_ref (greeter_session);
return TRUE;
}
{
DisplayServer *display_server;
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (session);
display_server = create_display_server (seat, session);
return FALSE;
}
- if (seat->priv->session_to_activate)
- g_object_unref (seat->priv->session_to_activate);
+ g_clear_object (&seat->priv->session_to_activate);
seat->priv->session_to_activate = g_object_ref (greeter_session);
session = SESSION (greeter_session);