From 88f08a42f30c6d79adbc9c1d5d897113fcd3a6f4 Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Fri, 30 Mar 2018 14:31:17 -0400 Subject: Fix segfault when reaping invisible workspaces --- sway/tree/layout.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'sway/tree/layout.c') diff --git a/sway/tree/layout.c b/sway/tree/layout.c index 32e6a77c..588ceb2d 100644 --- a/sway/tree/layout.c +++ b/sway/tree/layout.c @@ -110,9 +110,11 @@ struct sway_container *container_reap_empty(struct sway_container *container) { while (container->children->length == 0) { if (container->type == C_WORKSPACE) { if (!workspace_is_visible(container)) { + struct sway_container *parent = container->parent; container_workspace_destroy(container); + return parent; } - break; + return container; } else if (container->type == C_CONTAINER) { struct sway_container *parent = container->parent; container_destroy(container); -- cgit v1.2.3