aboutsummaryrefslogtreecommitdiffstats
path: root/components
diff options
context:
space:
mode:
Diffstat (limited to 'components')
-rw-r--r--components/layout_2020/flexbox/layout.rs10
1 files changed, 6 insertions, 4 deletions
diff --git a/components/layout_2020/flexbox/layout.rs b/components/layout_2020/flexbox/layout.rs
index e4e59379d1e..a420ac4fdac 100644
--- a/components/layout_2020/flexbox/layout.rs
+++ b/components/layout_2020/flexbox/layout.rs
@@ -976,10 +976,12 @@ impl FlexLine<'_> {
let scaled_shrink_factors_sum: Length = unfrozen_items()
.map(|(item, _)| scaled_shrink_factor(item))
.sum();
- for (item, target_main_size) in unfrozen_items() {
- let ratio = scaled_shrink_factor(item) / scaled_shrink_factors_sum;
- target_main_size
- .set(item.flex_base_size - remaining_free_space.abs() * ratio);
+ if scaled_shrink_factors_sum > Length::zero() {
+ for (item, target_main_size) in unfrozen_items() {
+ let ratio = scaled_shrink_factor(item) / scaled_shrink_factors_sum;
+ target_main_size
+ .set(item.flex_base_size - remaining_free_space.abs() * ratio);
+ }
}
}
}