diff options
Diffstat (limited to 'src/libserver/css/css_value.cxx')
-rw-r--r-- | src/libserver/css/css_value.cxx | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/libserver/css/css_value.cxx b/src/libserver/css/css_value.cxx index 799d5f8ef..704905cd4 100644 --- a/src/libserver/css/css_value.cxx +++ b/src/libserver/css/css_value.cxx @@ -40,10 +40,16 @@ namespace rspamd::css { auto css_value::maybe_color_from_string(const std::string_view &input) -> std::optional<css_value> { - auto found_it = css_colors_map.find(input); - if (found_it != css_colors_map.end()) { - return css_value{found_it->second}; + if (input.size() > 1 && input.front() == '#') { + return css_value::maybe_color_from_hex(input.substr(1)); + } + else { + auto found_it = css_colors_map.find(input); + + if (found_it != css_colors_map.end()) { + return css_value{found_it->second}; + } } return std::nullopt; |