style: Track the visited-handling-mode on the MatchingContext.

Instead of on the stack.

This fixes bugs where we're not passing the value around correctly, like from
::-moz-any.

This is a fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1431539.
This commit is contained in:
Emilio Cobos Álvarez 2018-01-19 13:19:16 +01:00
parent e4f08ee2bb
commit 8e25c9e674
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C
8 changed files with 50 additions and 52 deletions

View file

@ -6,7 +6,6 @@
//! between layout and style.
use attr::{AttrSelectorOperation, NamespaceConstraint, CaseSensitivity};
use context::VisitedHandlingMode;
use matching::{ElementSelectorFlags, MatchingContext};
use parser::SelectorImpl;
use servo_arc::NonZeroPtrMut;
@ -69,7 +68,6 @@ pub trait Element: Sized + Clone + Debug {
&self,
pc: &<Self::Impl as SelectorImpl>::NonTSPseudoClass,
context: &mut MatchingContext<Self::Impl>,
visited_handling: VisitedHandlingMode,
flags_setter: &mut F,
) -> bool
where