diff options
author | Thomas Adam <thomas@xteddy.org> | 2017-03-09 18:01:16 +0000 |
---|---|---|
committer | Thomas Adam <thomas@xteddy.org> | 2017-03-09 18:01:16 +0000 |
commit | c5bdae466e4dad6c185fa5146b11275b6119ff24 (patch) | |
tree | 05536631ebb8c314a3026748c2b20753594cc5af /cmd-respawn-pane.c | |
parent | fd96ccfd802aec27a4835f7bb2030003b9668e64 (diff) | |
parent | bce1dee0341b3624d927d393fd0f21771660d5ed (diff) | |
download | rtmux-c5bdae466e4dad6c185fa5146b11275b6119ff24.tar.gz rtmux-c5bdae466e4dad6c185fa5146b11275b6119ff24.tar.bz2 rtmux-c5bdae466e4dad6c185fa5146b11275b6119ff24.zip |
Merge branch 'obsd-master'
Diffstat (limited to 'cmd-respawn-pane.c')
-rw-r--r-- | cmd-respawn-pane.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/cmd-respawn-pane.c b/cmd-respawn-pane.c index b95fc596..66e0d955 100644 --- a/cmd-respawn-pane.c +++ b/cmd-respawn-pane.c @@ -65,11 +65,6 @@ cmd_respawn_pane_exec(struct cmd *self, struct cmdq_item *item) return (CMD_RETURN_ERROR); } - env = environ_create(); - environ_copy(global_environ, env); - environ_copy(s->environ, env); - server_fill_environ(s, env); - window_pane_reset_mode(wp); screen_reinit(&wp->base); input_init(wp); @@ -82,6 +77,7 @@ cmd_respawn_pane_exec(struct cmd *self, struct cmdq_item *item) if (envent != NULL) path = envent->value; + env = environ_for_session(s); if (window_pane_spawn(wp, args->argc, args->argv, path, NULL, NULL, env, s->tio, &cause) != 0) { cmdq_error(item, "respawn pane failed: %s", cause); @@ -89,9 +85,10 @@ cmd_respawn_pane_exec(struct cmd *self, struct cmdq_item *item) environ_free(env); return (CMD_RETURN_ERROR); } + environ_free(env); + wp->flags |= PANE_REDRAW; server_status_window(w); - environ_free(env); return (CMD_RETURN_NORMAL); } |