| Index: Source/core/dom/Document.cpp
|
| diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp
|
| index 95f472d66f5410d5b3092bf470ae642040180b90..b96388f74579976d9a272a7a35d66891e6821338 100644
|
| --- a/Source/core/dom/Document.cpp
|
| +++ b/Source/core/dom/Document.cpp
|
| @@ -1698,8 +1698,8 @@ void Document::updateStyleForNodeIfNeeded(Node* node)
|
| return;
|
|
|
| bool needsStyleRecalc = hasPendingForcedStyleRecalc();
|
| - for (Node* n = node; n && !needsStyleRecalc; n = n->parentNode())
|
| - needsStyleRecalc = n->needsStyleRecalc();
|
| + for (Node* ancestor = node; ancestor && !needsStyleRecalc; ancestor = ancestor->parentOrShadowHostNode())
|
| + needsStyleRecalc = ancestor->needsStyleRecalc();
|
| if (needsStyleRecalc)
|
| updateStyleIfNeeded();
|
| }
|
|
|