From f85559144fbc4a58ce4f513b2217852bc959a8b6 Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Tue, 13 Jan 2009 06:50:10 +0000 Subject: kill-pane command. --- server.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'server.c') diff --git a/server.c b/server.c index 575c9159..e3d4919a 100644 --- a/server.c +++ b/server.c @@ -1,4 +1,4 @@ -/* $Id: server.c,v 1.98 2009-01-12 23:37:02 nicm Exp $ */ +/* $Id: server.c,v 1.99 2009-01-13 06:50:10 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -566,7 +566,7 @@ void server_handle_client(struct client *c) { struct winlink *wl = c->session->curw; - struct window_pane *wp = wl->window->active; + struct window_pane *wp; struct timeval tv; int key, prefix, status, xtimeout; @@ -590,6 +590,7 @@ server_handle_client(struct client *c) } if (server_locked) continue; + wp = wl->window->active; /* could die - do each loop */ if (key == prefix || c->flags & CLIENT_PREFIX) { memcpy(&c->command_timer, &tv, sizeof c->command_timer); @@ -606,6 +607,7 @@ server_handle_client(struct client *c) } else window_pane_key(wp, c, key); } + wp = wl->window->active; /* could die - reset again */ /* Ensure the cursor is in the right place and correctly on or off. */ status = options_get_number(&c->session->options, "status"); @@ -731,7 +733,7 @@ server_lost_window(struct window *w, int pane) wp = w->panes[pane]; log_debug("lost window %d (%s pane %d)", wp->fd, w->name, pane); - if (window_remove_pane(w, pane) == 0) { + if (window_remove_pane(w, wp) == 0) { server_redraw_window(w); return (0); } -- cgit