Prevent stretch from producing a negative size (#33951)

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
Oriol Brufau 2024-10-22 10:04:15 +02:00 committed by GitHub
parent afeaff7f1a
commit 8824c90716
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 17 additions and 4 deletions

View file

@ -1969,11 +1969,12 @@ impl IndependentFormattingContext {
let max_box_size = style.content_max_box_size(containing_block, &pbm);
let min_box_size = style.content_min_box_size(containing_block, &pbm);
let available_inline_size = containing_block.inline_size - pbm_sums.inline_sum();
let available_inline_size =
(containing_block.inline_size - pbm_sums.inline_sum()).max(Au::zero());
let available_block_size = containing_block
.block_size
.non_auto()
.map(|block_size| block_size - pbm_sums.block_sum());
.map(|block_size| (block_size - pbm_sums.block_sum()).max(Au::zero()));
let tentative_block_size = box_size
.block
.maybe_resolve_extrinsic(available_block_size)