Index: Source/core/dom/NodeRenderingTraversal.cpp |
diff --git a/Source/core/dom/NodeRenderingTraversal.cpp b/Source/core/dom/NodeRenderingTraversal.cpp |
index 1b23181f832898e94239b6e00a8f895c2815490b..97245cde99229c512e1335a216251350b64efabd 100644 |
--- a/Source/core/dom/NodeRenderingTraversal.cpp |
+++ b/Source/core/dom/NodeRenderingTraversal.cpp |
@@ -49,6 +49,9 @@ void ParentDetails::didTraverseShadowRoot(const ShadowRoot* root) |
ContainerNode* parentSlow(const Node* node, ParentDetails* details) |
{ |
+ if (ShadowRoot* root = node->containingShadowRoot()) |
+ ContentDistributor::ensureDistribution(root); |
+ |
ComposedShadowTreeWalker walker(node, ComposedShadowTreeWalker::CrossUpperBoundary, ComposedShadowTreeWalker::CanStartFromShadowBoundary); |
ContainerNode* found = toContainerNode(walker.traverseParent(walker.get(), details)); |
return details->outOfComposition() ? 0 : found; |