From 505b133fda52a97c58030a8b65345dd66a30c247 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Thu, 25 Jun 2020 16:55:43 +0200 Subject: [PATCH] LibWeb: Don't allow more than one color sub-value in CSS 'background' --- Libraries/LibWeb/CSS/StyleResolver.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Libraries/LibWeb/CSS/StyleResolver.cpp b/Libraries/LibWeb/CSS/StyleResolver.cpp index 2d74c34ddd..bb798b6c0d 100644 --- a/Libraries/LibWeb/CSS/StyleResolver.cpp +++ b/Libraries/LibWeb/CSS/StyleResolver.cpp @@ -353,8 +353,15 @@ static void set_property_expanding_shorthands(StyleProperties& style, CSS::Prope for (auto& part : parts) { values.append(parse_css_value(part)); } - if (values[0].is_color()) + + // HACK: Disallow more than one color value in a 'background' shorthand + size_t color_value_count = 0; + for (auto& value : values) + color_value_count += value.is_color(); + + if (values[0].is_color() && color_value_count == 1) style.set_property(CSS::PropertyID::BackgroundColor, values[0]); + for (auto& value : values) { if (!value.is_string()) continue;