aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/style/rule_tree/mod.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/components/style/rule_tree/mod.rs b/components/style/rule_tree/mod.rs
index 6ade281c351..1ba4232dd44 100644
--- a/components/style/rule_tree/mod.rs
+++ b/components/style/rule_tree/mod.rs
@@ -468,18 +468,19 @@ impl StrongRuleNode {
}
unsafe fn assert_free_list_has_no_duplicates_or_null(&self) {
- assert!(cfg!(debug_assertions));
+ assert!(cfg!(debug_assertions), "This is an expensive check!");
+ use std::collections::HashSet;
let me = &*self.ptr;
assert!(me.is_root());
let mut current = self.ptr;
- let mut seen = vec![];
+ let mut seen = HashSet::new();
while current != FREE_LIST_SENTINEL {
let next = (*current).next_free.load(Ordering::SeqCst);
assert!(!next.is_null());
assert!(!seen.contains(&next));
- seen.push(next);
+ seen.insert(next);
current = next;
}