commit ed71e67d7e46746a36a4c2437d143f52aa17b666
parent 8b0073b1954b54792f74b9e024c51548143906ea
Author: wil <william.barsse@gmail.com>
Date: Wed, 21 Dec 2016 16:58:38 +0100
[fix] handle cases where nb_master > children->length in auto layout
Diffstat:
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git 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