+Overview of changes in lightdm 0.9.3
+
+ * Unlock ConsoleKit sessions when switching to them
++ * Add a gdmflexiserver binary that provides backwards compatibility with
++ existing sessions
+
Overview of changes in lightdm 0.9.2
* Fix annotation and Vala bindings for getting the UserList singleton
create_session (Display *display, PAMSession *pam_session, const gchar *session_name, gboolean is_greeter, const gchar *log_filename)
{
User *user;
- gchar *sessions_dir, *filename, *path, *orig_path, *command = NULL;
+ gchar *sessions_dir, *filename, *path, *command = NULL;
++ const gchar *orig_path;
GKeyFile *session_desktop_file;
Session *session;
gchar *cookie;
set_env_from_pam_session (session, pam_session);
- /* Insert our own utility directory to PATH */
++ /* Insert our own utility directory to PATH
++ * This is to provide gdmflexiserver which provides backwards compatibility with GDM.
++ * This can be removed when this is no longer required.
++ */
+ orig_path = process_get_env (PROCESS (session), "PATH");
- path = g_strdup_printf ("%s:%s", PKGLIBEXEC_DIR, orig_path);
- process_set_env (PROCESS (session), "PATH", path);
- g_free (path);
- g_free (orig_path);
++ if (orig_path)
++ {
++ path = g_strdup_printf ("%s:%s", PKGLIBEXEC_DIR, orig_path);
++ process_set_env (PROCESS (session), "PATH", path);
++ g_free (path);
++ }
+
process_set_log_file (PROCESS (session), log_filename);
/* Open ConsoleKit session */
g_hash_table_insert (process->priv->env, g_strdup (name), g_strdup (value));
}
-gchar *
++const gchar *
+ process_get_env (Process *process, const gchar *name)
+ {
- g_return_if_fail (process != NULL);
- return g_strdup (g_hash_table_lookup (process->priv->env, name));
++ g_return_val_if_fail (process != NULL, FALSE);
++ return g_hash_table_lookup (process->priv->env, name);
+ }
+
static void
process_watch_cb (GPid pid, gint status, gpointer data)
{
void process_set_env (Process *process, const gchar *name, const gchar *value);
-gchar *process_get_env (Process *process, const gchar *name);
++const gchar *process_get_env (Process *process, const gchar *name);
+
gboolean process_start (Process *process,
User *user,
const gchar *working_dir,