diff options
author | Simon Sapin <simon.sapin@exyr.org> | 2017-03-17 01:02:55 +0100 |
---|---|---|
committer | Simon Sapin <simon.sapin@exyr.org> | 2017-03-19 22:30:34 +0100 |
commit | 600152bd0049035d3c41dfe4aa381d0713d0127a (patch) | |
tree | e13ac0df798aee7dfe44c63ecdbb66c61b623569 /components/script/dom/cssmediarule.rs | |
parent | fe4e70c5f8b05778c09aed0b1d8a727cc1066df3 (diff) | |
download | servo-600152bd0049035d3c41dfe4aa381d0713d0127a.tar.gz servo-600152bd0049035d3c41dfe4aa381d0713d0127a.zip |
Replace more RwLock<MediaList> with shared_lock::Locked<MediaList>
Diffstat (limited to 'components/script/dom/cssmediarule.rs')
-rw-r--r-- | components/script/dom/cssmediarule.rs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/components/script/dom/cssmediarule.rs b/components/script/dom/cssmediarule.rs index 9242ee01bb7..1d1f0846a51 100644 --- a/components/script/dom/cssmediarule.rs +++ b/components/script/dom/cssmediarule.rs @@ -50,22 +50,25 @@ impl CSSMediaRule { fn medialist(&self) -> Root<MediaList> { self.medialist.or_init(|| MediaList::new(self.global().as_window(), + self.cssconditionrule.parent_stylesheet(), self.mediarule.read().media_queries.clone())) } /// https://drafts.csswg.org/css-conditional-3/#the-cssmediarule-interface pub fn get_condition_text(&self) -> DOMString { + let guard = self.cssconditionrule.shared_lock().read(); let rule = self.mediarule.read(); - let list = rule.media_queries.read(); + let list = rule.media_queries.read_with(&guard); list.to_css_string().into() } /// https://drafts.csswg.org/css-conditional-3/#the-cssmediarule-interface pub fn set_condition_text(&self, text: DOMString) { + let mut guard = self.cssconditionrule.shared_lock().write(); let mut input = Parser::new(&text); let new_medialist = parse_media_query_list(&mut input); let rule = self.mediarule.read(); - let mut list = rule.media_queries.write(); + let mut list = rule.media_queries.write_with(&mut guard); *list = new_medialist; } } |