diff options
author | nicm <nicm> | 2015-04-24 22:19:36 +0000 |
---|---|---|
committer | nicm <nicm> | 2015-04-24 22:19:36 +0000 |
commit | 583b4ab72b7bf66fda8ab63a08fe435483de5e5a (patch) | |
tree | 7620822095c73c5d78942cdfa7005d6a6f50019d /job.c | |
parent | 5a2d0533a84a13613fb356b66ed8ada2a65f6edf (diff) | |
download | rtmux-583b4ab72b7bf66fda8ab63a08fe435483de5e5a.tar.gz rtmux-583b4ab72b7bf66fda8ab63a08fe435483de5e5a.tar.bz2 rtmux-583b4ab72b7bf66fda8ab63a08fe435483de5e5a.zip |
Set working directory for run-shell and if-shell.
Diffstat (limited to 'job.c')
-rw-r--r-- | job.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -41,7 +41,7 @@ struct joblist all_jobs = LIST_HEAD_INITIALIZER(all_jobs); /* Start a job running, if it isn't already. */ struct job * -job_run(const char *cmd, struct session *s, +job_run(const char *cmd, struct session *s, int cwd, void (*callbackfn)(struct job *), void (*freefn)(void *), void *data) { struct job *job; @@ -67,6 +67,9 @@ job_run(const char *cmd, struct session *s, case 0: /* child */ clear_signals(1); + if (cwd != -1 && fchdir(cwd) != 0) + chdir("/"); + environ_push(&env); environ_free(&env); |