]> rtime.felk.cvut.cz Git - sojka/lightdm.git/commitdiff
Make a login1 service object (not currently required, but will be used for automatic...
authorRobert Ancell <robert.ancell@canonical.com>
Fri, 22 Aug 2014 01:41:12 +0000 (13:41 +1200)
committerRobert Ancell <robert.ancell@canonical.com>
Fri, 22 Aug 2014 01:41:12 +0000 (13:41 +1200)
1  2 
src/session.c

diff --combined src/session.c
index 82af286fa0514b8319e26e43dd5d91f86eecfe63,bc26870dd502628767e26f0d1612163d9ca5fd3c..4e5060bf601ee7cf4f7b9c40feef932371b6fbbe
@@@ -38,8 -38,8 +38,8 @@@ static guint signals[LAST_SIGNAL] = { 
  
  struct SessionPrivate
  {
 -    /* Session type */
 -    gchar *session_type;
 +    /* Configuration for this session */
 +    SessionConfig *config;
  
      /* Display server running on */
      DisplayServer *display_server;
@@@ -131,27 -131,18 +131,27 @@@ session_new (void
  }
  
  void
 -session_set_session_type (Session *session, const gchar *session_type)
 +session_set_config (Session *session, SessionConfig *config)
  {
      g_return_if_fail (session != NULL);
 -    g_free (session->priv->session_type);
 -    session->priv->session_type = g_strdup (session_type);
 +
 +    if (session->priv->config)
 +        g_object_unref (session->priv->config);
 +    session->priv->config = g_object_ref (config);
 +}
 +
 +SessionConfig *
 +session_get_config (Session *session)
 +{
 +    g_return_val_if_fail (session != NULL, NULL);
 +    return session->priv->config;
  }
  
  const gchar *
  session_get_session_type (Session *session)
  {
      g_return_val_if_fail (session != NULL, NULL);
 -    return session->priv->session_type;
 +    return session_config_get_session_type (session_get_config (session));
  }
  
  void
@@@ -805,7 -796,7 +805,7 @@@ session_real_run (Session *session
      for (i = 0; i < argc; i++)
          write_string (session, session->priv->argv[i]);
  
-     if (login1_is_running ())
+     if (login1_service_get_is_connected (login1_service_get_instance ()))
          session->priv->login1_session = read_string_from_child (session);
      if (!session->priv->login1_session)
          session->priv->console_kit_cookie = read_string_from_child (session);
@@@ -913,8 -904,7 +913,8 @@@ session_finalize (GObject *object
      Session *self = SESSION (object);
      int i;
  
 -    g_free (self->priv->session_type);
 +    if (self->priv->config)
 +        g_object_unref (self->priv->config);
      if (self->priv->display_server)
          g_object_unref (self->priv->display_server);
      if (self->priv->pid)