Bug 1364412: Properly reject to parse pseudo-element states that don't support state. r=bholley

MozReview-Commit-ID: KQCFPtOTGQI
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
This commit is contained in:
Emilio Cobos Álvarez 2017-05-15 16:38:35 +02:00
parent 1e0edf4909
commit fe8da51fee
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C

View file

@ -319,7 +319,8 @@ impl<'a> ::selectors::Parser for SelectorParser<'a> {
None => return Err(()), None => return Err(()),
}; };
let state = input.try(|input| { let state = if pseudo.supports_user_action_state() {
input.try(|input| {
let mut state = ElementState::empty(); let mut state = ElementState::empty();
while !input.is_exhausted() { while !input.is_exhausted() {
@ -334,7 +335,10 @@ impl<'a> ::selectors::Parser for SelectorParser<'a> {
} }
Ok(state) Ok(state)
}); }).ok()
} else {
None
};
Ok(PseudoElementSelector { Ok(PseudoElementSelector {
pseudo: pseudo, pseudo: pseudo,