1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 03:57:44 +00:00

LibWeb: Remove early continue in size parsing

Step 5 of parsing was always skipped because step 4 continues.

Running step 5 causes some of the denominators to be 0 and causes
divide by zero error in CSSPixelFraction.

SVG Image with height of 0 will cause divide by zero error when
calculating intrinsic aspect ratio of SVGDecoderImageData.

We also get a divide by zero error in AlignContent::SpaceBetween of the
FlexFormatingContext.

During auto track stretching in GridFormatingContext there is a
possibility for count_of_auto_max_sizing_tracks to stay 0.
This commit is contained in:
Bastian Neumann 2024-01-15 20:26:12 +01:00 committed by Alexander Kalenik
parent e2bc606eeb
commit 7cd489d6aa
6 changed files with 15 additions and 8 deletions

View file

@ -294,6 +294,7 @@ public:
: m_numerator(numerator)
, m_denominator(denominator)
{
VERIFY(denominator != 0);
}
explicit constexpr CSSPixelFraction(CSSPixels value)
@ -307,6 +308,7 @@ public:
: m_numerator(numerator)
, m_denominator(denominator)
{
VERIFY(denominator != 0);
}
constexpr operator CSSPixels() const