Commit 9ceaa8b2 authored by hayato's avatar hayato Committed by Commit bot

Make ElementShadow::oldestShadowRoot() return a reference

ElementShadow::m_shadowRoot is always non-nullptr here.

BUG=624724

Review-Url: https://codereview.chromium.org/2322223002
Cr-Commit-Position: refs/heads/master@{#417559}
parent 1fc1b2f0
......@@ -421,7 +421,7 @@ static void matchHostRules(const Element& element, ElementRuleCollector& collect
if (!shadow)
return;
for (ShadowRoot* shadowRoot = shadow->oldestShadowRoot(); shadowRoot; shadowRoot = shadowRoot->youngerShadowRoot()) {
for (ShadowRoot* shadowRoot = &shadow->oldestShadowRoot(); shadowRoot; shadowRoot = shadowRoot->youngerShadowRoot()) {
if (!shadowRoot->numberOfStyles())
continue;
if (ScopedStyleResolver* resolver = shadowRoot->scopedStyleResolver()) {
......
......@@ -2119,10 +2119,9 @@ ShadowRoot* Element::authorShadowRoot() const
ShadowRoot* Element::userAgentShadowRoot() const
{
if (ElementShadow* elementShadow = shadow()) {
if (ShadowRoot* root = elementShadow->oldestShadowRoot()) {
DCHECK(root->type() == ShadowRootType::UserAgent);
return root;
}
ShadowRoot& root = elementShadow->oldestShadowRoot();
DCHECK(root.type() == ShadowRootType::UserAgent);
return &root;
}
return nullptr;
......
......@@ -580,7 +580,7 @@ inline static ShadowRoot* oldestShadowRootFor(const Node* node)
if (!node->isElementNode())
return nullptr;
if (ElementShadow* shadow = toElement(node)->shadow())
return shadow->oldestShadowRoot();
return &shadow->oldestShadowRoot();
return nullptr;
}
#endif
......
......@@ -393,7 +393,7 @@ static ShadowRoot* authorShadowRootOf(const ContainerNode& node)
ElementShadow* shadow = toElement(node).shadow();
DCHECK(shadow);
for (ShadowRoot* shadowRoot = shadow->oldestShadowRoot(); shadowRoot; shadowRoot = shadowRoot->youngerShadowRoot()) {
for (ShadowRoot* shadowRoot = &shadow->oldestShadowRoot(); shadowRoot; shadowRoot = shadowRoot->youngerShadowRoot()) {
if (shadowRoot->type() == ShadowRootType::V0 || shadowRoot->type() == ShadowRootType::Open)
return shadowRoot;
}
......
......@@ -332,7 +332,7 @@ const SelectRuleFeatureSet& ElementShadow::ensureSelectFeatureSet()
return m_selectFeatures;
m_selectFeatures.clear();
for (ShadowRoot* root = oldestShadowRoot(); root; root = root->youngerShadowRoot())
for (ShadowRoot* root = &oldestShadowRoot(); root; root = root->youngerShadowRoot())
collectSelectFeatureSetFrom(*root);
m_needsSelectFeatureSet = false;
return m_selectFeatures;
......
......@@ -45,7 +45,7 @@ public:
Element& host() const;
ShadowRoot& youngestShadowRoot() const;
ShadowRoot* oldestShadowRoot() const { return m_shadowRoot; }
ShadowRoot& oldestShadowRoot() const { DCHECK(m_shadowRoot); return *m_shadowRoot; }
ElementShadow* containingShadow() const;
ShadowRoot& addShadowRoot(Element& shadowHost, ShadowRootType);
......
......@@ -692,7 +692,7 @@ ShadowRoot* Internals::oldestShadowRoot(Element* host)
{
ASSERT(host);
if (ElementShadow* shadow = host->shadow())
return shadow->oldestShadowRoot();
return &shadow->oldestShadowRoot();
return 0;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment