diff --git a/components/script/dom/stylepropertymapreadonly.rs b/components/script/dom/stylepropertymapreadonly.rs index 38632f3e6e9..02f8a342321 100644 --- a/components/script/dom/stylepropertymapreadonly.rs +++ b/components/script/dom/stylepropertymapreadonly.rs @@ -16,6 +16,7 @@ use servo_atoms::Atom; use std::cmp::Ordering; use std::collections::HashMap; use std::iter::Iterator; +use style::custom_properties; #[dom_struct] pub struct StylePropertyMapReadOnly { @@ -73,14 +74,14 @@ impl StylePropertyMapReadOnlyMethods for StylePropertyMapReadOnly { // https://drafts.css-houdini.org/css-typed-om-1/#dom-stylepropertymap-getproperties // requires this sort order result.sort_by(|key1, key2| { - if key1.starts_with("-") { - if key2.starts_with("-") { + if let Ok(key1) = custom_properties::parse_name(key1) { + if let Ok(key2) = custom_properties::parse_name(key2) { key1.cmp(key2) } else { Ordering::Greater } } else { - if key2.starts_with("-") { + if let Ok(_) = custom_properties::parse_name(key2) { Ordering::Less } else { key1.cmp(key2)