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

Unified Diff: third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h

Issue 2193683004: Move ThreadableLoader to Oilpan heap (3/3) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@onheap-threadable-loader
Patch Set: fix Created 4 years, 5 months 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: third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h
diff --git a/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h b/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h
index c9ca1b567fb6b34fc5e0edccd27a14a6fa9f8f8f..06b8ea317d21441633cdc248f0acee165ff085ec 100644
--- a/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h
+++ b/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h
@@ -54,7 +54,8 @@ class ResourceRequest;
class SecurityOrigin;
class ThreadableLoaderClient;
-class CORE_EXPORT DocumentThreadableLoader final : public ThreadableLoader, private RawResourceClient {
haraken 2016/07/29 15:00:44 I'm just curious but is there any reason for the p
yhirano 2016/08/01 08:52:38 I don't know, and I don't like private inheritance
+class CORE_EXPORT DocumentThreadableLoader final : public ThreadableLoader, private ResourceOwner<RawResource> {
+ USING_GARBAGE_COLLECTED_MIXIN(DocumentThreadableLoader);
public:
static void loadResourceSynchronously(Document&, const ResourceRequest&, ThreadableLoaderClient&, const ThreadableLoaderOptions&, const ResourceLoaderOptions&);
static DocumentThreadableLoader* create(Document&, ThreadableLoaderClient*, const ThreadableLoaderOptions&, const ResourceLoaderOptions&);
@@ -150,29 +151,6 @@ class CORE_EXPORT DocumentThreadableLoader final : public ThreadableLoader, priv
// returns allowCredentials value of m_resourceLoaderOptions.
StoredCredentials effectiveAllowCredentials() const;
- // TODO(oilpan): DocumentThreadableLoader used to be a ResourceOwner,
- // but ResourceOwner was moved onto the oilpan heap before
- // DocumentThreadableLoader was ready. When DocumentThreadableLoader
- // moves onto the oilpan heap, make it a ResourceOwner again and remove
- // this re-implementation of ResourceOwner.
- RawResource* resource() const { return m_resource.get(); }
- void clearResource() { setResource(nullptr); }
- void setResource(RawResource* newResource)
- {
- if (newResource == m_resource)
- return;
-
- if (RawResource* oldResource = m_resource.release())
- oldResource->removeClient(this);
-
- if (newResource) {
- m_resource = newResource;
- m_resource->addClient(this);
- }
- }
- Member<RawResource> m_resource;
- // End of ResourceOwner re-implementation, see above.
-
SecurityOrigin* getSecurityOrigin() const;
Document& document() const;

Powered by Google App Engine
This is Rietveld 408576698