You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
we have an optimization for style rule matching that allows us to quickly reject selectors by comparing them against filters collected as we traverse down the tree, e.g. we can easily tell that .a .b {} is not going to match on an element if we haven't encountered element with class "a" as we was descending.
the issue is that we don't reset this filter after we cross shadow tree boundary which might cause false positive rejections. it's really hard to provide a simple reduction because ancestor filter is implemented using Bloom filter which gives false positives. it's possible to reproduce this pretty easily if you change ancestor filter to use deterministic data structure like hash table.
The text was updated successfully, but these errors were encountered:
we have an optimization for style rule matching that allows us to quickly reject selectors by comparing them against filters collected as we traverse down the tree, e.g. we can easily tell that
.a .b {}
is not going to match on an element if we haven't encountered element with class "a" as we was descending.the issue is that we don't reset this filter after we cross shadow tree boundary which might cause false positive rejections. it's really hard to provide a simple reduction because ancestor filter is implemented using Bloom filter which gives false positives. it's possible to reproduce this pretty easily if you change ancestor filter to use deterministic data structure like hash table.
The text was updated successfully, but these errors were encountered: