summaryrefslogtreecommitdiffstats
path: root/cmd-split-window.c
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2017-04-22 12:01:19 +0100
committerThomas Adam <thomas@xteddy.org>2017-04-22 12:01:19 +0100
commite802b683ea0ebfa377a5bb8a6b03454c1edbe2d5 (patch)
tree7a495bed6d4d979974826a11707f1c2585173768 /cmd-split-window.c
parentb08e451c916fd942b9d24706583ccedf307e0877 (diff)
parent55cd4c7bc756509f241788f7f73676676ef538f6 (diff)
Merge branch 'obsd-master'
Diffstat (limited to 'cmd-split-window.c')
-rw-r--r--cmd-split-window.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/cmd-split-window.c b/cmd-split-window.c
index 38b1f937..af2b5ca4 100644
--- a/cmd-split-window.c
+++ b/cmd-split-window.c
@@ -43,7 +43,7 @@ const struct cmd_entry cmd_split_window_entry = {
.usage = "[-bdfhvP] [-c start-directory] [-F format] "
"[-p percentage|-l size] " CMD_TARGET_PANE_USAGE " [command]",
- .tflag = CMD_PANE,
+ .target = { 't', CMD_FIND_PANE, 0 },
.flags = 0,
.exec = cmd_split_window_exec
@@ -52,12 +52,13 @@ const struct cmd_entry cmd_split_window_entry = {
static enum cmd_retval
cmd_split_window_exec(struct cmd *self, struct cmdq_item *item)
{
+ struct cmd_find_state *current = &item->shared->current;
struct args *args = self->args;
- struct client *c = item->state.c;
- struct session *s = item->state.tflag.s;
- struct winlink *wl = item->state.tflag.wl;
+ struct client *c = cmd_find_client(item, NULL, 1);
+ struct session *s = item->target.s;
+ struct winlink *wl = item->target.wl;
struct window *w = wl->window;
- struct window_pane *wp = item->state.tflag.wp, *new_wp = NULL;
+ struct window_pane *wp = item->target.wp, *new_wp = NULL;
struct environ *env;
const char *cmd, *path, *shell, *template, *cwd, *to_free;
char **argv, *cause, *new_cause, *cp;
@@ -155,6 +156,7 @@ cmd_split_window_exec(struct cmd *self, struct cmdq_item *item)
if (!args_has(args, 'd')) {
window_set_active_pane(w, new_wp);
session_select(s, wl->idx);
+ cmd_find_from_session(current, s);
server_redraw_session(s);
} else
server_status_session(s);