diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp index 02c831198d..4694eb35ca 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp +++ b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp @@ -3129,11 +3129,8 @@ RefPtr Parser::parse_single_background_size_value(TokenStream Parser::parse_border_value(PropertyID property_id, Vector const& component_values) +RefPtr Parser::parse_border_value(PropertyID property_id, TokenStream& tokens) { - if (component_values.size() > 3) - return nullptr; - RefPtr border_width; RefPtr border_color; RefPtr border_style; @@ -3173,8 +3170,8 @@ RefPtr Parser::parse_border_value(PropertyID property_id, Vector Parser::parse_border_value(PropertyID property_id, Vector> Parser::parse_css_value(Property case PropertyID::BorderLeft: case PropertyID::BorderRight: case PropertyID::BorderTop: - if (auto parsed_value = parse_border_value(property_id, component_values)) + if (auto parsed_value = parse_border_value(property_id, tokens); parsed_value && !tokens.has_next_token()) return parsed_value.release_nonnull(); return ParseError::SyntaxError; case PropertyID::BorderTopLeftRadius: diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Parser.h b/Userland/Libraries/LibWeb/CSS/Parser/Parser.h index 4e1fa91bb1..138cec7c0d 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Parser.h +++ b/Userland/Libraries/LibWeb/CSS/Parser/Parser.h @@ -231,7 +231,7 @@ private: RefPtr parse_single_background_position_x_or_y_value(TokenStream&, PropertyID); RefPtr parse_single_background_repeat_value(TokenStream&); RefPtr parse_single_background_size_value(TokenStream&); - RefPtr parse_border_value(PropertyID, Vector const&); + RefPtr parse_border_value(PropertyID, TokenStream&); RefPtr parse_border_radius_value(TokenStream&); RefPtr parse_border_radius_shorthand_value(TokenStream&); RefPtr parse_content_value(TokenStream&);