aboutsummaryrefslogtreecommitdiff
path: root/cmd-swap-pane.c
diff options
context:
space:
mode:
Diffstat (limited to 'cmd-swap-pane.c')
-rw-r--r--cmd-swap-pane.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/cmd-swap-pane.c b/cmd-swap-pane.c
index 3e0e6e60..021ac224 100644
--- a/cmd-swap-pane.c
+++ b/cmd-swap-pane.c
@@ -45,16 +45,18 @@ const struct cmd_entry cmd_swap_pane_entry = {
static enum cmd_retval
cmd_swap_pane_exec(struct cmd *self, struct cmdq_item *item)
{
- struct args *args = self->args;
+ struct args *args = cmd_get_args(self);
+ struct cmd_find_state *source = cmdq_get_source(item);
+ struct cmd_find_state *target = cmdq_get_target(item);
struct window *src_w, *dst_w;
struct window_pane *tmp_wp, *src_wp, *dst_wp;
struct layout_cell *src_lc, *dst_lc;
u_int sx, sy, xoff, yoff;
- dst_w = item->target.wl->window;
- dst_wp = item->target.wp;
- src_w = item->source.wl->window;
- src_wp = item->source.wp;
+ dst_w = target->wl->window;
+ dst_wp = target->wp;
+ src_w = source->wl->window;
+ src_wp = source->wp;
if (window_push_zoom(dst_w, args_has(args, 'Z')))
server_redraw_window(dst_w);