servo: Merge #19434 - style: Disable @-moz-document on author sheets on nightly and early beta (from emilio:moz-document); r=xidorn

Bug: 1035091
Reviewed-by: xidorn
MozReview-Commit-ID: AAUs1jJifjS
Source-Repo: https://github.com/servo/servo
Source-Revision: 3b78cf1045939754526e636d1b72fafbb5cefbb4

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 12a18445715cf7303dc7b956e46161003cf5766e
This commit is contained in:
Emilio Cobos Álvarez 2017-11-30 07:24:27 -06:00
Родитель 4250a7d5e6
Коммит 0a671ea58c
2 изменённых файлов: 24 добавлений и 6 удалений

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -424,12 +424,27 @@ impl<'a, 'b, 'i, R: ParseErrorReporter> AtRuleParser<'i> for NestedRuleParser<'a
}
},
"-moz-document" => {
if cfg!(feature = "gecko") {
let cond = DocumentCondition::parse(self.context, input)?;
Ok(AtRuleType::WithBlock(AtRuleBlockPrelude::Document(cond, location)))
} else {
Err(input.new_custom_error(StyleParseErrorKind::UnsupportedAtRule(name.clone())))
if !cfg!(feature = "gecko") {
return Err(input.new_custom_error(
StyleParseErrorKind::UnsupportedAtRule(name.clone())
))
}
#[cfg(feature = "gecko")]
{
use gecko_bindings::structs;
if self.stylesheet_origin == Origin::Author &&
unsafe { !structs::StylePrefs_sMozDocumentEnabledInContent }
{
return Err(input.new_custom_error(
StyleParseErrorKind::UnsupportedAtRule(name.clone())
))
}
}
let cond = DocumentCondition::parse(self.context, input)?;
Ok(AtRuleType::WithBlock(AtRuleBlockPrelude::Document(cond, location)))
},
_ => Err(input.new_custom_error(StyleParseErrorKind::UnsupportedAtRule(name.clone())))
}