diff options
author | Nicholas Marriott <nicholas.marriott@gmail.com> | 2013-02-22 16:25:50 +0000 |
---|---|---|
committer | Nicholas Marriott <nicholas.marriott@gmail.com> | 2013-02-22 16:25:50 +0000 |
commit | ce7bf1083edd5679420d5288ae53a52759e0d51c (patch) | |
tree | b374f41806da66441a5ca5b69eba0f683e6b2f17 /cmd-split-window.c | |
parent | 1db4ec6e6327aa4b879e42f5e37a2c599f487206 (diff) | |
parent | 1c82cf76608d7e87d734414ddba6e76622b9646c (diff) | |
download | rtmux-ce7bf1083edd5679420d5288ae53a52759e0d51c.tar.gz rtmux-ce7bf1083edd5679420d5288ae53a52759e0d51c.tar.bz2 rtmux-ce7bf1083edd5679420d5288ae53a52759e0d51c.zip |
Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code
Diffstat (limited to 'cmd-split-window.c')
-rw-r--r-- | cmd-split-window.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/cmd-split-window.c b/cmd-split-window.c index cac8095e..859d5fd1 100644 --- a/cmd-split-window.c +++ b/cmd-split-window.c @@ -58,8 +58,8 @@ cmd_split_window_exec(struct cmd *self, struct cmd_ctx *ctx) struct window *w; struct window_pane *wp, *new_wp = NULL; struct environ env; - const char *cmd, *cwd, *shell; - char *cause, *new_cause; + const char *cmd, *cwd, *shell, *prefix; + char *cause, *new_cause, *cmd1; u_int hlimit; int size, percentage; enum layout_type type; @@ -121,9 +121,18 @@ cmd_split_window_exec(struct cmd *self, struct cmd_ctx *ctx) goto error; } new_wp = window_add_pane(w, hlimit); - if (window_pane_spawn( - new_wp, cmd, shell, cwd, &env, s->tio, &cause) != 0) + + if (*cmd != '\0') { + prefix = options_get_string(&w->options, "command-prefix"); + xasprintf(&cmd1, "%s%s", prefix, cmd); + } else + cmd1 = xstrdup(""); + if (window_pane_spawn(new_wp, cmd1, shell, cwd, &env, s->tio, + &cause) != 0) { + free(cmd1); goto error; + } + free(cmd1); layout_assign_pane(lc, new_wp); server_redraw_window(w); |