aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmlstyleelement.rs
diff options
context:
space:
mode:
authorAnthony Ramine <n.oxyde@gmail.com>2017-04-23 11:07:48 +0200
committerAnthony Ramine <n.oxyde@gmail.com>2017-04-27 10:41:55 +0200
commitf68e2fded92e769a1fc0d5bdc963f47da366d651 (patch)
tree9482e5104d03ecbf4bbc4626694389ca9de10e17 /components/script/dom/htmlstyleelement.rs
parent10fb8e61c77fcb2ad1adfe517aa08ecbe64d4db6 (diff)
downloadservo-f68e2fded92e769a1fc0d5bdc963f47da366d651.tar.gz
servo-f68e2fded92e769a1fc0d5bdc963f47da366d651.zip
Propagate quirks mode all the way to ParserContext
The quirks mode is still not properly propagated in geckolib.
Diffstat (limited to 'components/script/dom/htmlstyleelement.rs')
-rw-r--r--components/script/dom/htmlstyleelement.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/components/script/dom/htmlstyleelement.rs b/components/script/dom/htmlstyleelement.rs
index 0c026fcfe9a..8905c3baa65 100644
--- a/components/script/dom/htmlstyleelement.rs
+++ b/components/script/dom/htmlstyleelement.rs
@@ -76,6 +76,7 @@ impl HTMLStyleElement {
assert!(node.is_in_doc());
let win = window_from_node(node);
+ let doc = document_from_node(self);
let mq_attribute = element.get_attribute(&ns!(), &local_name!("media"));
let mq_str = match mq_attribute {
@@ -88,7 +89,8 @@ impl HTMLStyleElement {
let context = CssParserContext::new_for_cssom(&url,
win.css_error_reporter(),
Some(CssRuleType::Media),
- LengthParsingMode::Default);
+ LengthParsingMode::Default,
+ doc.quirks_mode());
let shared_lock = node.owner_doc().style_shared_lock().clone();
let mq = Arc::new(shared_lock.wrap(
parse_media_query_list(&context, &mut CssParser::new(&mq_str))));
@@ -96,6 +98,7 @@ impl HTMLStyleElement {
let sheet = Stylesheet::from_str(&data, win.get_url(), Origin::Author, mq,
shared_lock, Some(&loader),
win.css_error_reporter(),
+ doc.quirks_mode(),
self.line_number);
let sheet = Arc::new(sheet);
@@ -107,7 +110,6 @@ impl HTMLStyleElement {
win.layout_chan().send(Msg::AddStylesheet(sheet.clone())).unwrap();
*self.stylesheet.borrow_mut() = Some(sheet);
- let doc = document_from_node(self);
doc.invalidate_stylesheets();
}