Index: content/browser/cache_storage/cache_storage_cache.cc |
diff --git a/content/browser/cache_storage/cache_storage_cache.cc b/content/browser/cache_storage/cache_storage_cache.cc |
index 6dc652e7d3d00d2807912fb8ed3ab82d673e9854..f08e87e8f0b644950ab01ba3f797a6c5bf2ebeec 100644 |
--- a/content/browser/cache_storage/cache_storage_cache.cc |
+++ b/content/browser/cache_storage/cache_storage_cache.cc |
@@ -593,6 +593,13 @@ void CacheStorageCache::QueryCache( |
return; |
} |
+ if (!options.ignore_method && request && !request->method.empty() && |
+ request->method != "GET") { |
+ callback.Run(CACHE_STORAGE_OK, base::WrapUnique(new QueryCacheResults( |
jkarlin
2016/08/10 13:22:45
base::MakeUnique<QueryCacheResults>(std::move(requ
jsbell
2016/08/10 17:18:09
Done.
|
+ std::move(request), options, callback))); |
+ return; |
+ } |
+ |
std::unique_ptr<QueryCacheResults> query_cache_results( |
new QueryCacheResults(std::move(request), options, callback)); |
OpenAllEntries(base::Bind(&CacheStorageCache::QueryCacheDidOpenAllEntries, |
@@ -692,6 +699,13 @@ void CacheStorageCache::MatchImpl( |
return; |
} |
+ if (request->method == "HEAD") { |
jkarlin
2016/08/10 13:22:44
Should this be "if (request->method != "GET")" ?
jsbell
2016/08/10 17:18:09
Done.
|
+ callback.Run(CACHE_STORAGE_ERROR_NOT_FOUND, |
+ std::unique_ptr<ServiceWorkerResponse>(), |
+ std::unique_ptr<storage::BlobDataHandle>()); |
+ return; |
+ } |
+ |
std::unique_ptr<disk_cache::Entry*> scoped_entry_ptr( |
new disk_cache::Entry*()); |
disk_cache::Entry** entry_ptr = scoped_entry_ptr.get(); |