diff options
author | David Herrmann <dh.herrmann@googlemail.com> | 2012-12-12 21:24:15 +0100 |
---|---|---|
committer | David Herrmann <dh.herrmann@googlemail.com> | 2012-12-12 21:24:15 +0100 |
commit | 24fe3f1911fe2b20995b71c77592e64224e8e935 (patch) | |
tree | 858d996669d82d2c1120234d4f779871343c4ebf /src | |
parent | dd481c2fa64a93840d3429cc47ffc73fa8c9f9eb (diff) |
kmscon: add --reset-env option
This option controls whether we reset the environment before spawning the
PTY child.
Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/kmscon_conf.c | 4 | ||||
-rw-r--r-- | src/kmscon_conf.h | 2 | ||||
-rw-r--r-- | src/kmscon_terminal.c | 2 |
3 files changed, 8 insertions, 0 deletions
diff --git a/src/kmscon_conf.c b/src/kmscon_conf.c index 242a576..3cc7c0b 100644 --- a/src/kmscon_conf.c +++ b/src/kmscon_conf.c @@ -92,6 +92,9 @@ static void print_help() "\t-t, --term <TERM> [xterm-256color]\n" "\t Value of the TERM environment variable\n" "\t for the child process\n" + "\t --reset-env [on]\n" + "\t Reset environment before running child\n" + "\t process\n" "\t --palette <name> [default]\n" "\t Select the used color palette\n" "\t --sb-size <num> [1000]\n" @@ -559,6 +562,7 @@ int kmscon_conf_new(struct conf_ctx **out) /* Terminal Options */ CONF_OPTION(0, 'l', "login", &conf_login, aftercheck_login, NULL, file_login, &conf->login, false), CONF_OPTION_STRING('t', "term", &conf->term, "xterm-256color"), + CONF_OPTION_BOOL(0, "reset-env", &conf->reset_env, true), CONF_OPTION_STRING(0, "palette", &conf->palette, NULL), CONF_OPTION_UINT(0, "sb-size", &conf->sb_size, 1000), diff --git a/src/kmscon_conf.h b/src/kmscon_conf.h index 71cc453..b18cc80 100644 --- a/src/kmscon_conf.h +++ b/src/kmscon_conf.h @@ -88,6 +88,8 @@ struct kmscon_conf_t { char **argv; /* TERM value */ char *term; + /* reset environment */ + bool reset_env; /* color palette */ char *palette; /* terminal scroll-back buffer size */ diff --git a/src/kmscon_terminal.c b/src/kmscon_terminal.c index d4652a9..7cf681e 100644 --- a/src/kmscon_terminal.c +++ b/src/kmscon_terminal.c @@ -539,6 +539,8 @@ int kmscon_terminal_register(struct kmscon_session **out, if (ret) goto err_vte; + kmscon_pty_set_env_reset(term->pty, term->conf->reset_env); + ret = kmscon_pty_set_term(term->pty, term->conf->term); if (ret) goto err_pty; |