From 6fadfdb6087b4b9127e0b4f392535ff27f5079b5 Mon Sep 17 00:00:00 2001 From: Bastien Dejean Date: Mon, 31 May 2021 11:22:59 +0200 Subject: [PATCH] Don't remove non-receptacles in `kill_node` Fixes #1268. --- src/tree.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/tree.c b/src/tree.c index 97dce28..1b6e091 100644 --- a/src/tree.c +++ b/src/tree.c @@ -1393,13 +1393,15 @@ void kill_node(monitor_t *m, desktop_t *d, node_t *n) return; } - for (node_t *f = first_extrema(n); f != NULL; f = next_leaf(f, n)) { - if (f->client != NULL) { - xcb_kill_client(dpy, f->id); + if (IS_RECEPTACLE(n)) { + remove_node(m, d, n); + } else { + for (node_t *f = first_extrema(n); f != NULL; f = next_leaf(f, n)) { + if (f->client != NULL) { + xcb_kill_client(dpy, f->id); + } } } - - remove_node(m, d, n); } void remove_node(monitor_t *m, desktop_t *d, node_t *n) -- 2.44.0