Index: content/browser/service_worker/service_worker_cache.cc |
diff --git a/content/browser/service_worker/service_worker_cache.cc b/content/browser/service_worker/service_worker_cache.cc |
index af5ac23c1ac01885c375acdda7017d753de89026..dd9184036aa47fc20f35d2da1fd76a40539ceb73 100644 |
--- a/content/browser/service_worker/service_worker_cache.cc |
+++ b/content/browser/service_worker/service_worker_cache.cc |
@@ -162,14 +162,14 @@ class BlobReader : public net::URLRequest::Delegate { |
}; |
// Put callbacks |
-void PutDidCreateEntry(ServiceWorkerFetchRequest* request, |
- ServiceWorkerResponse* response, |
+void PutDidCreateEntry(scoped_ptr<ServiceWorkerFetchRequest> request, |
+ scoped_ptr<ServiceWorkerResponse> response, |
const ServiceWorkerCache::ErrorCallback& callback, |
scoped_ptr<disk_cache::Entry*> entryptr, |
scoped_ptr<storage::BlobDataHandle> blob_data_handle, |
net::URLRequestContext* request_context, |
int rv); |
-void PutDidWriteHeaders(ServiceWorkerResponse* response, |
+void PutDidWriteHeaders(scoped_ptr<ServiceWorkerResponse> response, |
const ServiceWorkerCache::ErrorCallback& callback, |
disk_cache::ScopedEntryPtr entry, |
scoped_ptr<storage::BlobDataHandle> blob_data_handle, |
@@ -182,33 +182,33 @@ void PutDidWriteBlobToCache(const ServiceWorkerCache::ErrorCallback& callback, |
bool success); |
// Match callbacks |
-void MatchDidOpenEntry(ServiceWorkerFetchRequest* request, |
+void MatchDidOpenEntry(scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ResponseCallback& callback, |
base::WeakPtr<storage::BlobStorageContext> blob_storage, |
scoped_ptr<disk_cache::Entry*> entryptr, |
int rv); |
void MatchDidReadHeaderData( |
- ServiceWorkerFetchRequest* request, |
+ scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ResponseCallback& callback, |
base::WeakPtr<storage::BlobStorageContext> blob_storage, |
disk_cache::ScopedEntryPtr entry, |
scoped_ptr<ServiceWorkerRequestResponseHeaders> headers); |
void MatchDidReadResponseBodyData( |
- ServiceWorkerFetchRequest* request, |
+ scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ResponseCallback& callback, |
base::WeakPtr<storage::BlobStorageContext> blob_storage, |
disk_cache::ScopedEntryPtr entry, |
scoped_ptr<ServiceWorkerResponse> response, |
scoped_ptr<ResponseReadContext> response_context, |
int rv); |
-void MatchDoneWithBody(ServiceWorkerFetchRequest* request, |
+void MatchDoneWithBody(scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ResponseCallback& callback, |
base::WeakPtr<storage::BlobStorageContext> blob_storage, |
scoped_ptr<ServiceWorkerResponse> response, |
scoped_ptr<ResponseReadContext> response_context); |
// Delete callbacks |
-void DeleteDidOpenEntry(ServiceWorkerFetchRequest* request, |
+void DeleteDidOpenEntry(scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ErrorCallback& callback, |
scoped_ptr<disk_cache::Entry*> entryptr, |
int rv); |
@@ -228,8 +228,8 @@ void CreateBackendDidCreate(const ServiceWorkerCache::ErrorCallback& callback, |
base::WeakPtr<ServiceWorkerCache> cache, |
int rv); |
-void PutDidCreateEntry(ServiceWorkerFetchRequest* request, |
- ServiceWorkerResponse* response, |
+void PutDidCreateEntry(scoped_ptr<ServiceWorkerFetchRequest> request, |
+ scoped_ptr<ServiceWorkerResponse> response, |
const ServiceWorkerCache::ErrorCallback& callback, |
scoped_ptr<disk_cache::Entry*> entryptr, |
scoped_ptr<storage::BlobDataHandle> blob_data_handle, |
@@ -282,7 +282,7 @@ void PutDidCreateEntry(ServiceWorkerFetchRequest* request, |
net::CompletionCallback write_headers_callback = |
base::Bind(PutDidWriteHeaders, |
- response, |
+ base::Passed(response.Pass()), |
callback, |
base::Passed(entry.Pass()), |
base::Passed(blob_data_handle.Pass()), |
@@ -300,7 +300,7 @@ void PutDidCreateEntry(ServiceWorkerFetchRequest* request, |
write_headers_callback.Run(rv); |
} |
-void PutDidWriteHeaders(ServiceWorkerResponse* response, |
+void PutDidWriteHeaders(scoped_ptr<ServiceWorkerResponse> response, |
const ServiceWorkerCache::ErrorCallback& callback, |
disk_cache::ScopedEntryPtr entry, |
scoped_ptr<storage::BlobDataHandle> blob_data_handle, |
@@ -346,7 +346,7 @@ void PutDidWriteBlobToCache(const ServiceWorkerCache::ErrorCallback& callback, |
callback.Run(ServiceWorkerCache::ErrorTypeOK); |
} |
-void MatchDidOpenEntry(ServiceWorkerFetchRequest* request, |
+void MatchDidOpenEntry(scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ResponseCallback& callback, |
base::WeakPtr<storage::BlobStorageContext> blob_storage, |
scoped_ptr<disk_cache::Entry*> entryptr, |
@@ -365,7 +365,7 @@ void MatchDidOpenEntry(ServiceWorkerFetchRequest* request, |
disk_cache::Entry* tmp_entry_ptr = entry.get(); |
HeadersCallback headers_callback = base::Bind(MatchDidReadHeaderData, |
- request, |
+ base::Passed(request.Pass()), |
callback, |
blob_storage, |
base::Passed(entry.Pass())); |
@@ -374,7 +374,7 @@ void MatchDidOpenEntry(ServiceWorkerFetchRequest* request, |
} |
void MatchDidReadHeaderData( |
- ServiceWorkerFetchRequest* request, |
+ scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ResponseCallback& callback, |
base::WeakPtr<storage::BlobStorageContext> blob_storage, |
disk_cache::ScopedEntryPtr entry, |
@@ -431,7 +431,7 @@ void MatchDidReadHeaderData( |
net::CompletionCallback read_callback = |
base::Bind(MatchDidReadResponseBodyData, |
- request, |
+ base::Passed(request.Pass()), |
callback, |
blob_storage, |
base::Passed(entry.Pass()), |
@@ -449,7 +449,7 @@ void MatchDidReadHeaderData( |
} |
void MatchDidReadResponseBodyData( |
- ServiceWorkerFetchRequest* request, |
+ scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ResponseCallback& callback, |
base::WeakPtr<storage::BlobStorageContext> blob_storage, |
disk_cache::ScopedEntryPtr entry, |
@@ -464,7 +464,7 @@ void MatchDidReadResponseBodyData( |
} |
if (rv == 0) { |
- MatchDoneWithBody(request, |
+ MatchDoneWithBody(request.Pass(), |
callback, |
blob_storage, |
response.Pass(), |
@@ -485,7 +485,7 @@ void MatchDidReadResponseBodyData( |
net::CompletionCallback read_callback = |
base::Bind(MatchDidReadResponseBodyData, |
- request, |
+ base::Passed(request.Pass()), |
callback, |
blob_storage, |
base::Passed(entry.Pass()), |
@@ -502,7 +502,7 @@ void MatchDidReadResponseBodyData( |
read_callback.Run(read_rv); |
} |
-void MatchDoneWithBody(ServiceWorkerFetchRequest* request, |
+void MatchDoneWithBody(scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ResponseCallback& callback, |
base::WeakPtr<storage::BlobStorageContext> blob_storage, |
scoped_ptr<ServiceWorkerResponse> response, |
@@ -522,7 +522,7 @@ void MatchDoneWithBody(ServiceWorkerFetchRequest* request, |
blob_data_handle.Pass()); |
} |
-void DeleteDidOpenEntry(ServiceWorkerFetchRequest* request, |
+void DeleteDidOpenEntry(scoped_ptr<ServiceWorkerFetchRequest> request, |
const ServiceWorkerCache::ErrorCallback& callback, |
scoped_ptr<disk_cache::Entry*> entryptr, |
int rv) { |
@@ -686,8 +686,8 @@ void ServiceWorkerCache::CreateBackend(const ErrorCallback& callback) { |
create_cache_callback.Run(rv); |
} |
-void ServiceWorkerCache::Put(ServiceWorkerFetchRequest* request, |
- ServiceWorkerResponse* response, |
+void ServiceWorkerCache::Put(scoped_ptr<ServiceWorkerFetchRequest> request, |
+ scoped_ptr<ServiceWorkerResponse> response, |
const ErrorCallback& callback) { |
DCHECK(backend_); |
@@ -710,23 +710,25 @@ void ServiceWorkerCache::Put(ServiceWorkerFetchRequest* request, |
} |
} |
+ ServiceWorkerFetchRequest* request_ptr = request.get(); |
+ |
net::CompletionCallback create_entry_callback = |
base::Bind(PutDidCreateEntry, |
- request, |
- response, |
+ base::Passed(request.Pass()), |
+ base::Passed(response.Pass()), |
callback, |
base::Passed(entry.Pass()), |
base::Passed(blob_data_handle.Pass()), |
request_context_); |
int rv = backend_->CreateEntry( |
- request->url.spec(), entry_ptr, create_entry_callback); |
+ request_ptr->url.spec(), entry_ptr, create_entry_callback); |
if (rv != net::ERR_IO_PENDING) |
create_entry_callback.Run(rv); |
} |
-void ServiceWorkerCache::Match(ServiceWorkerFetchRequest* request, |
+void ServiceWorkerCache::Match(scoped_ptr<ServiceWorkerFetchRequest> request, |
const ResponseCallback& callback) { |
DCHECK(backend_); |
@@ -734,20 +736,22 @@ void ServiceWorkerCache::Match(ServiceWorkerFetchRequest* request, |
disk_cache::Entry** entry_ptr = entry.get(); |
+ ServiceWorkerFetchRequest* request_ptr = request.get(); |
+ |
net::CompletionCallback open_entry_callback = |
base::Bind(MatchDidOpenEntry, |
- request, |
+ base::Passed(request.Pass()), |
callback, |
blob_storage_context_, |
base::Passed(entry.Pass())); |
- int rv = |
- backend_->OpenEntry(request->url.spec(), entry_ptr, open_entry_callback); |
+ int rv = backend_->OpenEntry( |
+ request_ptr->url.spec(), entry_ptr, open_entry_callback); |
if (rv != net::ERR_IO_PENDING) |
open_entry_callback.Run(rv); |
} |
-void ServiceWorkerCache::Delete(ServiceWorkerFetchRequest* request, |
+void ServiceWorkerCache::Delete(scoped_ptr<ServiceWorkerFetchRequest> request, |
const ErrorCallback& callback) { |
DCHECK(backend_); |
@@ -755,11 +759,16 @@ void ServiceWorkerCache::Delete(ServiceWorkerFetchRequest* request, |
disk_cache::Entry** entry_ptr = entry.get(); |
- net::CompletionCallback open_entry_callback = base::Bind( |
- DeleteDidOpenEntry, request, callback, base::Passed(entry.Pass())); |
+ ServiceWorkerFetchRequest* request_ptr = request.get(); |
+ |
+ net::CompletionCallback open_entry_callback = |
+ base::Bind(DeleteDidOpenEntry, |
+ base::Passed(request.Pass()), |
+ callback, |
+ base::Passed(entry.Pass())); |
- int rv = |
- backend_->OpenEntry(request->url.spec(), entry_ptr, open_entry_callback); |
+ int rv = backend_->OpenEntry( |
+ request_ptr->url.spec(), entry_ptr, open_entry_callback); |
if (rv != net::ERR_IO_PENDING) |
open_entry_callback.Run(rv); |
} |