summaryrefslogtreecommitdiffstats
path: root/core/src
diff options
context:
space:
mode:
Diffstat (limited to 'core/src')
-rw-r--r--core/src/layout/flex.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/core/src/layout/flex.rs b/core/src/layout/flex.rs
index 823fb9e6..5ae98b8c 100644
--- a/core/src/layout/flex.rs
+++ b/core/src/layout/flex.rs
@@ -139,10 +139,13 @@ where
);
if fill_main_factor != 0 || fill_cross_factor != 0 {
- let max_main =
- remaining * fill_main_factor as f32 / fill_main_sum as f32;
+ let max_main = if fill_main_factor == 0 {
+ available.max(0.0)
+ } else {
+ remaining * fill_main_factor as f32 / fill_main_sum as f32
+ };
- let min_main = if max_main.is_infinite() {
+ let min_main = if fill_main_factor == 0 || max_main.is_infinite() {
0.0
} else {
max_main