Move server_fill_environ into environ.c and move some other common code

into it.
This commit is contained in:
nicm
2017-03-09 17:02:38 +00:00
parent e8f2609ca4
commit dbfee6a468
8 changed files with 40 additions and 52 deletions

View File

@ -355,16 +355,12 @@ session_new(struct session *s, const char *name, int argc, char **argv,
}
wl->session = s;
env = environ_create();
environ_copy(global_environ, env);
environ_copy(s->environ, env);
server_fill_environ(s, env);
shell = options_get_string(s->options, "default-shell");
if (*shell == '\0' || areshell(shell))
shell = _PATH_BSHELL;
hlimit = options_get_number(s->options, "history-limit");
env = environ_for_session(s);
w = window_create_spawn(name, argc, argv, path, shell, cwd, env, s->tio,
s->sx, s->sy, hlimit, cause);
if (w == NULL) {
@ -373,8 +369,8 @@ session_new(struct session *s, const char *name, int argc, char **argv,
return (NULL);
}
winlink_set_window(wl, w);
notify_session_window("window-linked", s, w);
environ_free(env);
notify_session_window("window-linked", s, w);
session_group_synchronize_from(s);
return (wl);