summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFurkan Sahin <furkan-dev@proton.me>2018-09-16 14:18:13 +1000
committerFurkan Sahin <furkan-dev@proton.me>2018-09-16 14:18:13 +1000
commit77c70e42934a184289b5c2ce12b2da536de505c4 (patch)
tree1b57c6edfc1a0da28f03088b1290c0e0e9bd9eb0
parent190a0882e7bcc51af474883a424bdbae2d7329f3 (diff)
Fix crash when unmapping last child of a tabbed workspace
* Create layout T[view view] * Move the cursor into the title bar area * Close both views Sway would crash because container_at_tabbed would attempt to divide by zero when there are no children. The children check isn't needed for the stacked function because it doesn't divide anything by the number of children. Fixes #2636.
-rw-r--r--sway/tree/container.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sway/tree/container.c b/sway/tree/container.c
index df064573..f906449a 100644
--- a/sway/tree/container.c
+++ b/sway/tree/container.c
@@ -202,6 +202,9 @@ static struct sway_container *container_at_tabbed(struct sway_node *parent,
}
struct sway_seat *seat = input_manager_current_seat(input_manager);
list_t *children = node_get_children(parent);
+ if (!children->length) {
+ return NULL;
+ }
// Tab titles
int title_height = container_titlebar_height();