Chromium Code Reviews
DescriptionMake slots in non-shadow trees participate in a flat tree
It has required non-trivial efforts to exclude slots in non-shadow trees from a
flat tree so far. Although this behavior is consistent with that in shadow
trees, this increased code complexity because distributed nodes of a slot in
non-shadow tree are not calculated in a part of normal distribution
calculation flow.
Since it is hard to maintain two different life cycles of distributions, we have
been receiving not-a-few crash reports from cluster fuzz.
The benefit of keeping the current behavior is small; there is no useful use
case for a slot in a non-shadow tree in real world.
To make the code simple and stable, it would be better to make a slot in a
non-shadow tree participate in a flat tree, as normal elements.
Note that this new behavior itself is spec compliant, however, it would create
a layout box by default because Blink does not support "display: contents" yet.
Once Blink supports "display: contents" in the future, a slot does not crate a
layout box by default, even though it participates in a flat tree.
A slot in shadow trees does not participate in a flat tree. This does not
change.
This CL should have no real impacts on users because there is no use cases for
slots in non-shadow trees in real world. It is likely that cluster fuzz is
the only use case.
To be precise, non-shadow trees should be read as "non-v1-shadow" trees.
BUG=659761, 660265
Committed: https://crrev.com/6aa048c86241d01d2084127c980d620f39edb8b1
Cr-Commit-Position: refs/heads/master@{#428686}
Patch Set 1 #Patch Set 2 : update expectation #Messages
Total messages: 29 (20 generated)
|