#include "console-kit.h"
#include "login1.h"
#include "guest-account.h"
+#include "shared-data-manager.h"
enum {
GOT_MESSAGES,
session->priv->env = g_list_append (session->priv->env, entry);
}
+const gchar *
+session_get_env (Session *session, const gchar *name)
+{
+ GList *link;
+ gchar *entry;
+
+ link = find_env_entry (session, name);
+ if (!link)
+ return NULL;
+
+ entry = link->data;
+
+ return entry + strlen (name) + 1;
+}
+
void
session_unset_env (Session *session, const gchar *name)
{
{
Session *session = data;
+ session->priv->child_watch = 0;
+
if (WIFEXITED (status))
l_debug (session, "Exited with return value %d", WEXITSTATUS (status));
else if (WIFSIGNALED (status))
else
x_authority_filename = g_build_filename (user_get_home_directory (session_get_user (session)), ".Xauthority", NULL);
+ /* Make sure shared user directory for this user exists */
+ if (!session->priv->remote_host_name)
+ {
+ gchar *data_dir = shared_data_manager_ensure_user_dir (shared_data_manager_get_instance (), session->priv->username);
+ l_debug(session, "MIKE set XDG_GREETER_DATA_DIR=%s from user %s", data_dir, session->priv->username);
+ if (data_dir)
+ {
+ session_set_env (session, "XDG_GREETER_DATA_DIR", data_dir);
+ g_free (data_dir);
+ }
+ }
+
if (session->priv->log_filename)
l_debug (session, "Logging to %s", session->priv->log_filename);
write_string (session, session->priv->log_filename);