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

Unified Diff: third_party/WebKit/Source/core/fetch/Resource.h

Issue 2191633003: Move ResourceClient to Oilpan heap (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@onheap-raw-resource-client
Patch Set: build fix Created 4 years, 4 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/fetch/Resource.h
diff --git a/third_party/WebKit/Source/core/fetch/Resource.h b/third_party/WebKit/Source/core/fetch/Resource.h
index ecb936c44e5669fdafb3a5fcaa83c663ec335f6d..70428fc06439fa2947416d13f9a3cb08b2b4ef80 100644
--- a/third_party/WebKit/Source/core/fetch/Resource.h
+++ b/third_party/WebKit/Source/core/fetch/Resource.h
@@ -144,7 +144,6 @@ public:
// resource clients that simply observe the resource.
void addClient(ResourceClient*, PreloadReferencePolicy = MarkAsReferenced);
void removeClient(ResourceClient*);
- virtual bool hasClientsOrObservers() const { return !m_clients.isEmpty() || !m_clientsAwaitingCallback.isEmpty() || !m_finishedClients.isEmpty(); }
enum PreloadResult {
PreloadNotReferenced,
@@ -232,6 +231,8 @@ public:
double freshnessLifetime();
double stalenessLifetime();
+ bool isAlive() const { return m_isAlive; }
+
void setCacheIdentifier(const String& cacheIdentifier) { m_cacheIdentifier = cacheIdentifier; }
String cacheIdentifier() const { return m_cacheIdentifier; }
@@ -264,6 +265,7 @@ protected:
void notifyClientsInternal(MarkFinishedOption);
void markClientFinished(ResourceClient*);
+ virtual bool hasClientsOrObservers() const { return !m_clients.isEmpty() || !m_clientsAwaitingCallback.isEmpty() || !m_finishedClients.isEmpty(); }
virtual void destroyDecodedDataForFailedRevalidation() { }
void setEncodedSize(size_t);
@@ -300,7 +302,7 @@ protected:
// Returns the memory dump name used for tracing. See Resource::onMemoryDump.
String getMemoryDumpName() const;
- const HashCountedSet<ResourceClient*>& clients() const { return m_clients; }
+ const HeapHashCountedSet<WeakMember<ResourceClient>>& clients() const { return m_clients; }
DataBufferingPolicy dataBufferingPolicy() const { return m_options.dataBufferingPolicy; }
void setCachePolicyBypassingCache();
@@ -357,13 +359,14 @@ private:
unsigned m_needsSynchronousCacheHit : 1;
unsigned m_linkPreload : 1;
bool m_isRevalidating : 1;
+ bool m_isAlive : 1;
// Ordered list of all redirects followed while fetching this resource.
Vector<RedirectPair> m_redirectChain;
- HashCountedSet<ResourceClient*> m_clients;
- HashCountedSet<ResourceClient*> m_clientsAwaitingCallback;
- HashCountedSet<ResourceClient*> m_finishedClients;
+ HeapHashCountedSet<WeakMember<ResourceClient>> m_clients;
+ HeapHashCountedSet<WeakMember<ResourceClient>> m_clientsAwaitingCallback;
+ HeapHashCountedSet<WeakMember<ResourceClient>> m_finishedClients;
ResourceLoaderOptions m_options;
« no previous file with comments | « third_party/WebKit/Source/core/fetch/RawResourceTest.cpp ('k') | third_party/WebKit/Source/core/fetch/Resource.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698