Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(797)

Unified Diff: Source/core/dom/Element.cpp

Issue 59113007: Utilize PassRefPtr and C++ refs in more places in ShadowRoot code (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/dom/Element.cpp
diff --git a/Source/core/dom/Element.cpp b/Source/core/dom/Element.cpp
index 970023ae3ad900fcba6176b27ef85a343a602223..5e49c3bc3618c09620eee8fcff746afe9430098c 100644
--- a/Source/core/dom/Element.cpp
+++ b/Source/core/dom/Element.cpp
@@ -1728,13 +1728,13 @@ ShadowRoot* Element::userAgentShadowRoot() const
return 0;
}
-ShadowRoot* Element::ensureUserAgentShadowRoot()
+ShadowRoot& Element::ensureUserAgentShadowRoot()
{
if (ShadowRoot* shadowRoot = userAgentShadowRoot())
- return shadowRoot;
- ShadowRoot* shadowRoot = ensureShadow().addShadowRoot(*this, ShadowRoot::UserAgentShadowRoot);
- didAddUserAgentShadowRoot(shadowRoot);
- return shadowRoot;
+ return *shadowRoot;
+ RefPtr<ShadowRoot> shadowRoot = ensureShadow().addShadowRoot(*this, ShadowRoot::UserAgentShadowRoot);
+ didAddUserAgentShadowRoot(*shadowRoot);
+ return *shadowRoot;
eseidel 2013/11/06 01:11:17 Who's holding onto this root... Lets hope didAddUs
adamk 2013/11/06 02:01:39 addShadowRoot does (ShadowRoot is TreeShared). Wha
}
bool Element::childTypeAllowed(NodeType type) const

Powered by Google App Engine
This is Rietveld 408576698