mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-03-27 07:58:07 -04:00
config: add a new ‘environment’ section
This section allows the user to define custom environment variables to be set in the child process: [environment] name=value
This commit is contained in:
parent
497c31d9fc
commit
755f96321a
6 changed files with 63 additions and 4 deletions
10
slave.c
10
slave.c
|
|
@ -305,8 +305,9 @@ err:
|
|||
|
||||
pid_t
|
||||
slave_spawn(int ptmx, int argc, const char *cwd, char *const *argv,
|
||||
char *const *envp, const char *term_env, const char *conf_shell,
|
||||
bool login_shell, const user_notifications_t *notifications)
|
||||
char *const *envp, const env_var_list_t *extra_env_vars,
|
||||
const char *term_env, const char *conf_shell, bool login_shell,
|
||||
const user_notifications_t *notifications)
|
||||
{
|
||||
int fork_pipe[2];
|
||||
if (pipe2(fork_pipe, O_CLOEXEC) < 0) {
|
||||
|
|
@ -356,6 +357,11 @@ slave_spawn(int ptmx, int argc, const char *cwd, char *const *argv,
|
|||
setenv("TERMINFO", FOOT_TERMINFO_PATH, 1);
|
||||
#endif
|
||||
|
||||
if (extra_env_vars != NULL) {
|
||||
tll_foreach(*extra_env_vars, it)
|
||||
setenv(it->item.name, it->item.value, 1);
|
||||
}
|
||||
|
||||
char **_shell_argv = NULL;
|
||||
char **shell_argv = NULL;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue