mirror of
https://github.com/tmux/tmux.git
synced 2025-09-02 21:56:57 +00:00
Add a way to mark environment variables as "hidden" so they can be used
by tmux but are not passed into the environment of new panes.
This commit is contained in:
8
spawn.c
8
spawn.c
@ -303,7 +303,7 @@ spawn_pane(struct spawn_context *sc, char **cause)
|
||||
child = environ_for_session(s, 0);
|
||||
if (sc->environ != NULL)
|
||||
environ_copy(sc->environ, child);
|
||||
environ_set(child, "TMUX_PANE", "%%%u", new_wp->id);
|
||||
environ_set(child, "TMUX_PANE", 0, "%%%u", new_wp->id);
|
||||
|
||||
/*
|
||||
* Then the PATH environment variable. The session one is replaced from
|
||||
@ -313,10 +313,10 @@ spawn_pane(struct spawn_context *sc, char **cause)
|
||||
if (c != NULL && c->session == NULL) { /* only unattached clients */
|
||||
ee = environ_find(c->environ, "PATH");
|
||||
if (ee != NULL)
|
||||
environ_set(child, "PATH", "%s", ee->value);
|
||||
environ_set(child, "PATH", 0, "%s", ee->value);
|
||||
}
|
||||
if (environ_find(child, "PATH") == NULL)
|
||||
environ_set(child, "%s", _PATH_DEFPATH);
|
||||
environ_set(child, "PATH", 0, "%s", _PATH_DEFPATH);
|
||||
|
||||
/* Then the shell. If respawning, use the old one. */
|
||||
if (~sc->flags & SPAWN_RESPAWN) {
|
||||
@ -326,7 +326,7 @@ spawn_pane(struct spawn_context *sc, char **cause)
|
||||
free(new_wp->shell);
|
||||
new_wp->shell = xstrdup(tmp);
|
||||
}
|
||||
environ_set(child, "SHELL", "%s", new_wp->shell);
|
||||
environ_set(child, "SHELL", 0, "%s", new_wp->shell);
|
||||
|
||||
/* Log the arguments we are going to use. */
|
||||
log_debug("%s: shell=%s", __func__, new_wp->shell);
|
||||
|
Reference in New Issue
Block a user