From ed71e67d7e46746a36a4c2437d143f52aa17b666 Mon Sep 17 00:00:00 2001 From: wil Date: Wed, 21 Dec 2016 16:58:38 +0100 Subject: [PATCH] [fix] handle cases where nb_master > children->length in auto layout --- sway/layout.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sway/layout.c b/sway/layout.c index 52473d0dc..0428ecf90 100644 --- a/sway/layout.c +++ b/sway/layout.c @@ -1209,15 +1209,14 @@ void apply_auto_layout(swayc_t *container, const double x, const double y, group_dim = old_group_dim[layout_group] * scale; if (container->nb_master > 0 && layout_group == 0) { start = 0; - end = container->nb_master; + end = MIN(container->nb_master, container->children->length); } else { if (group == 0) { start = container->nb_master; } else { start = end; } - end = start + - (nb_slaves - start + container->nb_master) / (nb_groups - layout_group); + end = start + (nb_slaves - start + container->nb_master) / (nb_groups - layout_group); } if (group == nb_groups - 1) { group_dim = pos_maj + dim_maj - pos; // remaining width