make xenodm reload the environment variables after setusercontext(3)
so that environment variables configured in login.conf(5) are also available ok matthieu@, millert@pull/1/head
parent
3fad868fb3
commit
c8f482983a
|
@ -60,7 +60,7 @@ userEnv (struct display *d, int useSystemPath, char *user, char *home, char *she
|
|||
const char **envvar;
|
||||
const char *str;
|
||||
|
||||
env = defaultEnv ();
|
||||
env = defaultEnv (NULL);
|
||||
env = setEnv (env, "DISPLAY", d->name);
|
||||
env = setEnv (env, "HOME", home);
|
||||
env = setEnv (env, "LOGNAME", user); /* POSIX, System V */
|
||||
|
|
|
@ -222,7 +222,7 @@ extern void LoadSessionResources (struct display *d);
|
|||
extern void ReinitResources (void);
|
||||
|
||||
/* in session.c */
|
||||
extern char **defaultEnv (void);
|
||||
extern char **defaultEnv (char **e);
|
||||
extern char **systemEnv (struct display *d, char *user, char *home);
|
||||
extern int source (char **environ, char *file);
|
||||
extern void ClearCloseOnFork (int fd);
|
||||
|
|
|
@ -339,6 +339,12 @@ StartClient (
|
|||
name, _SysErrorMsg (errno));
|
||||
return (0);
|
||||
}
|
||||
/*
|
||||
* setusercontext(3) will update the environment based on
|
||||
* the login class so update our idea about the environment
|
||||
* as well
|
||||
*/
|
||||
vinfo->userEnviron = defaultEnv (vinfo->userEnviron);
|
||||
} else {
|
||||
LogError ("getpwnam for \"%s\" failed: %s\n",
|
||||
name, _SysErrorMsg (errno));
|
||||
|
@ -452,11 +458,11 @@ execute (char **argv, char **environ)
|
|||
}
|
||||
|
||||
char **
|
||||
defaultEnv (void)
|
||||
defaultEnv (char **e)
|
||||
{
|
||||
char **env, **exp, *value;
|
||||
|
||||
env = NULL;
|
||||
env = e;
|
||||
for (exp = exportList; exp && *exp; ++exp) {
|
||||
value = getenv (*exp);
|
||||
if (value)
|
||||
|
@ -470,7 +476,7 @@ systemEnv (struct display *d, char *user, char *home)
|
|||
{
|
||||
char **env;
|
||||
|
||||
env = defaultEnv ();
|
||||
env = defaultEnv (NULL);
|
||||
env = setEnv (env, "DISPLAY", d->name);
|
||||
if (home)
|
||||
env = setEnv (env, "HOME", home);
|
||||
|
|
Loading…
Reference in New Issue