From 8cb8a0da8d061293e9e4b52d99473ff574abf727 Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Sat, 12 Sep 2009 13:01:19 +0000 Subject: Tidy some common code for destroying sessions into a new function. --- server.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) (limited to 'server.c') diff --git a/server.c b/server.c index ce2d984a..09ce8b36 100644 --- a/server.c +++ b/server.c @@ -1211,21 +1211,11 @@ server_check_window(struct window *w) RB_FOREACH(wl, winlinks, &s->windows) { if (wl->window != w) continue; - destroyed = session_detach(s, wl); - for (j = 0; j < ARRAY_LENGTH(&clients); j++) { - c = ARRAY_ITEM(&clients, j); - if (c == NULL || c->session != s) - continue; - if (!destroyed) { - server_redraw_client(c); - continue; - } - c->session = NULL; - server_write_client(c, MSG_EXIT, NULL, 0); - } - /* If the session was destroyed, bail now. */ - if (destroyed) + if (session_detach(s, wl)) { + server_destroy_session(s); break; + } + server_redraw_session(s); goto restart; } } -- cgit