diff options
author | nicm <nicm> | 2015-10-28 09:51:55 +0000 |
---|---|---|
committer | nicm <nicm> | 2015-10-28 09:51:55 +0000 |
commit | bf9c933caed5c74be3c9c4da02d7c57a9dcf091d (patch) | |
tree | 533de8449d76a2bb151f883f99f80ba73f0c987e /job.c | |
parent | 44657bf932b068aff5ce1019a4e8a2e7b00b5321 (diff) | |
download | rtmux-bf9c933caed5c74be3c9c4da02d7c57a9dcf091d.tar.gz rtmux-bf9c933caed5c74be3c9c4da02d7c57a9dcf091d.tar.bz2 rtmux-bf9c933caed5c74be3c9c4da02d7c57a9dcf091d.zip |
Like options, move the environ struct into environ.c.
Diffstat (limited to 'job.c')
-rw-r--r-- | job.c | 18 |
1 files changed, 9 insertions, 9 deletions
@@ -45,22 +45,22 @@ job_run(const char *cmd, struct session *s, int cwd, void (*callbackfn)(struct job *), void (*freefn)(void *), void *data) { struct job *job; - struct environ env; + struct environ *env; pid_t pid; int nullfd, out[2]; if (socketpair(AF_UNIX, SOCK_STREAM, PF_UNSPEC, out) != 0) return (NULL); - environ_init(&env); - environ_copy(&global_environ, &env); + env = environ_create(); + environ_copy(global_environ, env); if (s != NULL) - environ_copy(&s->environ, &env); - server_fill_environ(s, &env); + environ_copy(s->environ, env); + server_fill_environ(s, env); switch (pid = fork()) { case -1: - environ_free(&env); + environ_free(env); close(out[0]); close(out[1]); return (NULL); @@ -70,8 +70,8 @@ job_run(const char *cmd, struct session *s, int cwd, if (cwd != -1 && fchdir(cwd) != 0) chdir("/"); - environ_push(&env); - environ_free(&env); + environ_push(env); + environ_free(env); if (dup2(out[1], STDIN_FILENO) == -1) fatal("dup2 failed"); @@ -96,7 +96,7 @@ job_run(const char *cmd, struct session *s, int cwd, } /* parent */ - environ_free(&env); + environ_free(env); close(out[1]); job = xmalloc(sizeof *job); |