Title: [197180] trunk/Source/WebKit2
- Revision
- 197180
- Author
- ander...@apple.com
- Date
- 2016-02-26 10:44:17 -0800 (Fri, 26 Feb 2016)
Log Message
Cache::traverse should pass the record info to its traversal handler
https://bugs.webkit.org/show_bug.cgi?id=154695
Reviewed by Antti Koivisto.
* NetworkProcess/NetworkProcess.cpp:
(WebKit::fetchDiskCacheEntries):
(WebKit::clearDiskCacheEntries):
* NetworkProcess/cache/NetworkCache.cpp:
(WebKit::NetworkCache::Cache::traverse):
* NetworkProcess/cache/NetworkCache.h:
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (197179 => 197180)
--- trunk/Source/WebKit2/ChangeLog 2016-02-26 18:40:00 UTC (rev 197179)
+++ trunk/Source/WebKit2/ChangeLog 2016-02-26 18:44:17 UTC (rev 197180)
@@ -1,3 +1,17 @@
+2016-02-25 Anders Carlsson <ander...@apple.com>
+
+ Cache::traverse should pass the record info to its traversal handler
+ https://bugs.webkit.org/show_bug.cgi?id=154695
+
+ Reviewed by Antti Koivisto.
+
+ * NetworkProcess/NetworkProcess.cpp:
+ (WebKit::fetchDiskCacheEntries):
+ (WebKit::clearDiskCacheEntries):
+ * NetworkProcess/cache/NetworkCache.cpp:
+ (WebKit::NetworkCache::Cache::traverse):
+ * NetworkProcess/cache/NetworkCache.h:
+
2016-02-25 Gavin Barraclough <barraclo...@apple.com>
RefCounter value changed callback should be called on all changes (not just zero edge).
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp (197179 => 197180)
--- trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp 2016-02-26 18:40:00 UTC (rev 197179)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp 2016-02-26 18:44:17 UTC (rev 197180)
@@ -285,8 +285,8 @@
if (NetworkCache::singleton().isEnabled()) {
auto* origins = new HashSet<RefPtr<SecurityOrigin>>();
- NetworkCache::singleton().traverse([completionHandler, origins](const NetworkCache::Entry *entry) {
- if (!entry) {
+ NetworkCache::singleton().traverse([completionHandler, origins](const NetworkCache::Cache::TraversalEntry *traversalEntry) {
+ if (!traversalEntry) {
Vector<WebsiteData::Entry> entries;
for (auto& origin : *origins)
@@ -301,7 +301,7 @@
return;
}
- origins->add(SecurityOrigin::create(entry->response().url()));
+ origins->add(SecurityOrigin::create(traversalEntry->entry.response().url()));
});
return;
@@ -397,11 +397,11 @@
auto* cacheKeysToDelete = new Vector<NetworkCache::Key>;
- NetworkCache::singleton().traverse([completionHandler, originsToDelete, cacheKeysToDelete](const NetworkCache::Entry *entry) {
+ NetworkCache::singleton().traverse([completionHandler, originsToDelete, cacheKeysToDelete](const NetworkCache::Cache::TraversalEntry *traversalEntry) {
- if (entry) {
- if (originsToDelete->contains(SecurityOrigin::create(entry->response().url())))
- cacheKeysToDelete->append(entry->key());
+ if (traversalEntry) {
+ if (originsToDelete->contains(SecurityOrigin::create(traversalEntry->entry.response().url())))
+ cacheKeysToDelete->append(traversalEntry->entry.key());
return;
}
Modified: trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp (197179 => 197180)
--- trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp 2016-02-26 18:40:00 UTC (rev 197179)
+++ trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp 2016-02-26 18:44:17 UTC (rev 197180)
@@ -520,11 +520,11 @@
remove(makeCacheKey(request));
}
-void Cache::traverse(std::function<void (const Entry*)>&& traverseHandler)
+void Cache::traverse(const std::function<void (const TraversalEntry*)>& traverseHandler)
{
ASSERT(isEnabled());
- m_storage->traverse(resourceType(), 0, [traverseHandler](const Storage::Record* record, const Storage::RecordInfo&) {
+ m_storage->traverse(resourceType(), 0, [traverseHandler](const Storage::Record* record, const Storage::RecordInfo& recordInfo) {
if (!record) {
traverseHandler(nullptr);
return;
@@ -534,7 +534,8 @@
if (!entry)
return;
- traverseHandler(entry.get());
+ TraversalEntry traversalEntry { *entry, recordInfo };
+ traverseHandler(&traversalEntry);
});
}
Modified: trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.h (197179 => 197180)
--- trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.h 2016-02-26 18:40:00 UTC (rev 197179)
+++ trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.h 2016-02-26 18:44:17 UTC (rev 197180)
@@ -108,7 +108,11 @@
std::unique_ptr<Entry> storeRedirect(const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, const WebCore::ResourceRequest& redirectRequest);
std::unique_ptr<Entry> update(const WebCore::ResourceRequest&, const GlobalFrameID&, const Entry&, const WebCore::ResourceResponse& validatingResponse);
- void traverse(std::function<void (const Entry*)>&&);
+ struct TraversalEntry {
+ const Entry& entry;
+ const Storage::RecordInfo& recordInfo;
+ };
+ void traverse(const std::function<void (const TraversalEntry*)>&);
void remove(const Key&);
void remove(const WebCore::ResourceRequest&);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes