Apply Bind-to-BindOnce rewriter to //content

This is another round of base_bind_rewriter application to //content
that replaces base::Bind to base::BindOnce where the return value is
converted to OnceCallback immediately.

Change-Id: I65d79384af5589e75ecda1ceb849147009243fbf
Reviewed-on: https://chromium-review.googlesource.com/928741
Reviewed-by: Kinuko Yasuda <[email protected]>
Commit-Queue: Taiju Tsuiki <[email protected]>
Cr-Commit-Position: refs/heads/master@{#538363}
diff --git a/content/browser/appcache/appcache_internals_ui.cc b/content/browser/appcache/appcache_internals_ui.cc
index f6f494a3..b5f06aba 100644
--- a/content/browser/appcache/appcache_internals_ui.cc
+++ b/content/browser/appcache/appcache_internals_ui.cc
@@ -294,10 +294,10 @@
         appcache_service_->storage()->CreateResponseReader(
             GURL(response_enquiry.manifest_url), response_enquiry.response_id));
 
-    reader->ReadData(
-        response_data.get(), amount_to_read,
-        base::Bind(&Proxy::OnResponseDataReadComplete, this, response_enquiry,
-                   response_info, base::Passed(&reader), response_data));
+    reader->ReadData(response_data.get(), amount_to_read,
+                     base::BindOnce(&Proxy::OnResponseDataReadComplete, this,
+                                    response_enquiry, response_info,
+                                    base::Passed(&reader), response_data));
   } else {
     OnResponseDataReadComplete(response_enquiry, nullptr, nullptr, nullptr, -1);
   }
diff --git a/content/browser/appcache/appcache_quota_client_unittest.cc b/content/browser/appcache/appcache_quota_client_unittest.cc
index 7ffe479b..9168b16 100644
--- a/content/browser/appcache/appcache_quota_client_unittest.cc
+++ b/content/browser/appcache/appcache_quota_client_unittest.cc
@@ -81,15 +81,14 @@
                            StorageType type) {
     client->GetOriginUsage(
         origin, type,
-        base::Bind(&AppCacheQuotaClientTest::OnGetOriginUsageComplete,
-                   weak_factory_.GetWeakPtr()));
+        base::BindOnce(&AppCacheQuotaClientTest::OnGetOriginUsageComplete,
+                       weak_factory_.GetWeakPtr()));
   }
 
   void AsyncGetOriginsForType(storage::QuotaClient* client, StorageType type) {
     client->GetOriginsForType(
-        type,
-        base::Bind(&AppCacheQuotaClientTest::OnGetOriginsComplete,
-                   weak_factory_.GetWeakPtr()));
+        type, base::BindOnce(&AppCacheQuotaClientTest::OnGetOriginsComplete,
+                             weak_factory_.GetWeakPtr()));
   }
 
   void AsyncGetOriginsForHost(storage::QuotaClient* client,
@@ -97,8 +96,8 @@
                               const std::string& host) {
     client->GetOriginsForHost(
         type, host,
-        base::Bind(&AppCacheQuotaClientTest::OnGetOriginsComplete,
-                   weak_factory_.GetWeakPtr()));
+        base::BindOnce(&AppCacheQuotaClientTest::OnGetOriginsComplete,
+                       weak_factory_.GetWeakPtr()));
   }
 
   void AsyncDeleteOriginData(storage::QuotaClient* client,
@@ -106,8 +105,8 @@
                              const url::Origin& origin) {
     client->DeleteOriginData(
         origin, type,
-        base::Bind(&AppCacheQuotaClientTest::OnDeleteOriginDataComplete,
-                   weak_factory_.GetWeakPtr()));
+        base::BindOnce(&AppCacheQuotaClientTest::OnDeleteOriginDataComplete,
+                       weak_factory_.GetWeakPtr()));
   }
 
   void SetUsageMapEntry(const url::Origin& origin, int64_t usage) {
diff --git a/content/browser/appcache/appcache_response_unittest.cc b/content/browser/appcache/appcache_response_unittest.cc
index 524c4a66..d0c9162 100644
--- a/content/browser/appcache/appcache_response_unittest.cc
+++ b/content/browser/appcache/appcache_response_unittest.cc
@@ -190,19 +190,19 @@
     EXPECT_FALSE(writer_->IsWritePending());
     expected_write_result_ = GetHttpResponseInfoSize(head);
     write_info_buffer_ = new HttpResponseInfoIOBuffer(head);
-    writer_->WriteInfo(write_info_buffer_.get(),
-                       base::Bind(&AppCacheResponseTest::OnWriteInfoComplete,
-                                  base::Unretained(this)));
+    writer_->WriteInfo(
+        write_info_buffer_.get(),
+        base::BindOnce(&AppCacheResponseTest::OnWriteInfoComplete,
+                       base::Unretained(this)));
   }
 
   void WriteResponseBody(scoped_refptr<IOBuffer> io_buffer, int buf_len) {
     EXPECT_FALSE(writer_->IsWritePending());
     write_buffer_ = io_buffer;
     expected_write_result_ = buf_len;
-    writer_->WriteData(write_buffer_.get(),
-                       buf_len,
-                       base::Bind(&AppCacheResponseTest::OnWriteComplete,
-                                  base::Unretained(this)));
+    writer_->WriteData(write_buffer_.get(), buf_len,
+                       base::BindOnce(&AppCacheResponseTest::OnWriteComplete,
+                                      base::Unretained(this)));
   }
 
   void WriteResponseMetadata(scoped_refptr<IOBuffer> io_buffer, int buf_len) {
@@ -219,10 +219,9 @@
     EXPECT_FALSE(reader_->IsReadPending());
     read_buffer_ = io_buffer;
     expected_read_result_ = buf_len;
-    reader_->ReadData(read_buffer_.get(),
-                      buf_len,
-                      base::Bind(&AppCacheResponseTest::OnReadComplete,
-                                 base::Unretained(this)));
+    reader_->ReadData(read_buffer_.get(), buf_len,
+                      base::BindOnce(&AppCacheResponseTest::OnReadComplete,
+                                     base::Unretained(this)));
   }
 
   // AppCacheResponseReader / Writer completion callbacks
@@ -340,8 +339,8 @@
     EXPECT_FALSE(reader_->IsReadPending());
     read_info_buffer_ = new HttpResponseInfoIOBuffer();
     reader_->ReadInfo(read_info_buffer_.get(),
-                      base::Bind(&AppCacheResponseTest::OnReadInfoComplete,
-                                 base::Unretained(this)));
+                      base::BindOnce(&AppCacheResponseTest::OnReadInfoComplete,
+                                     base::Unretained(this)));
     EXPECT_TRUE(reader_->IsReadPending());
     expected_read_result_ = net::ERR_CACHE_MISS;
   }
@@ -349,10 +348,9 @@
   void ReadNonExistentData() {
     EXPECT_FALSE(reader_->IsReadPending());
     read_buffer_ = new IOBuffer(kBlockSize);
-    reader_->ReadData(read_buffer_.get(),
-                      kBlockSize,
-                      base::Bind(&AppCacheResponseTest::OnReadComplete,
-                                 base::Unretained(this)));
+    reader_->ReadData(read_buffer_.get(), kBlockSize,
+                      base::BindOnce(&AppCacheResponseTest::OnReadComplete,
+                                     base::Unretained(this)));
     EXPECT_TRUE(reader_->IsReadPending());
     expected_read_result_ = net::ERR_CACHE_MISS;
   }
@@ -616,10 +614,9 @@
     EXPECT_FALSE(reader_->IsReadPending());
     read_buffer_ = new IOBuffer(kBlockSize);
     expected_read_result_ = 0;
-    reader_->ReadData(read_buffer_.get(),
-                      kBlockSize,
-                      base::Bind(&AppCacheResponseTest::OnReadComplete,
-                                 base::Unretained(this)));
+    reader_->ReadData(read_buffer_.get(), kBlockSize,
+                      base::BindOnce(&AppCacheResponseTest::OnReadComplete,
+                                     base::Unretained(this)));
   }
 
   void ReadRange() {
@@ -668,11 +665,11 @@
 
     // Push tasks in reverse order
     PushNextTaskAsImmediate(
-        base::Bind(&AppCacheResponseTest::ReadInBlocksImmediately,
-                   base::Unretained(this)));
+        base::BindOnce(&AppCacheResponseTest::ReadInBlocksImmediately,
+                       base::Unretained(this)));
     PushNextTaskAsImmediate(
-        base::Bind(&AppCacheResponseTest::WriteOutBlocksImmediately,
-                   base::Unretained(this)));
+        base::BindOnce(&AppCacheResponseTest::WriteOutBlocksImmediately,
+                       base::Unretained(this)));
 
     // Get them going.
     ScheduleNextTask();
@@ -683,8 +680,8 @@
     written_response_id_ = writer_->response_id();
     for (int i = 0; i < kNumBlocks; ++i) {
       PushNextTaskAsImmediate(
-          base::Bind(&AppCacheResponseTest::WriteOneBlock,
-                     base::Unretained(this), kNumBlocks - i));
+          base::BindOnce(&AppCacheResponseTest::WriteOneBlock,
+                         base::Unretained(this), kNumBlocks - i));
     }
     ScheduleNextTask();
   }
@@ -695,16 +692,16 @@
         GURL(), written_response_id_));
     for (int i = 0; i < kNumBlocks; ++i) {
       PushNextTaskAsImmediate(
-          base::Bind(&AppCacheResponseTest::ReadOneBlockImmediately,
-                     base::Unretained(this),
-          kNumBlocks - i));
+          base::BindOnce(&AppCacheResponseTest::ReadOneBlockImmediately,
+                         base::Unretained(this), kNumBlocks - i));
     }
     ScheduleNextTask();
   }
 
   void ReadOneBlockImmediately(int block_number) {
-    PushNextTaskAsImmediate(base::Bind(&AppCacheResponseTest::VerifyOneBlock,
-                                       base::Unretained(this), block_number));
+    PushNextTaskAsImmediate(
+        base::BindOnce(&AppCacheResponseTest::VerifyOneBlock,
+                       base::Unretained(this), block_number));
     ReadResponseBody(new IOBuffer(kBlockSize), kBlockSize);
   }
 
diff --git a/content/browser/appcache/appcache_service_impl.cc b/content/browser/appcache/appcache_service_impl.cc
index 06f166f..163feb5 100644
--- a/content/browser/appcache/appcache_service_impl.cc
+++ b/content/browser/appcache/appcache_service_impl.cc
@@ -336,8 +336,8 @@
   info_buffer_ = new HttpResponseInfoIOBuffer();
   response_reader_->ReadInfo(
       info_buffer_.get(),
-      base::Bind(&CheckResponseHelper::OnReadInfoComplete,
-                 base::Unretained(this)));
+      base::BindOnce(&CheckResponseHelper::OnReadInfoComplete,
+                     base::Unretained(this)));
 }
 
 void AppCacheServiceImpl::CheckResponseHelper::OnReadInfoComplete(int result) {
@@ -353,10 +353,9 @@
   // Start reading the data.
   data_buffer_ = new net::IOBuffer(kIOBufferSize);
   response_reader_->ReadData(
-      data_buffer_.get(),
-      kIOBufferSize,
-      base::Bind(&CheckResponseHelper::OnReadDataComplete,
-                 base::Unretained(this)));
+      data_buffer_.get(), kIOBufferSize,
+      base::BindOnce(&CheckResponseHelper::OnReadDataComplete,
+                     base::Unretained(this)));
 }
 
 void AppCacheServiceImpl::CheckResponseHelper::OnReadDataComplete(int result) {
@@ -364,10 +363,9 @@
     // Keep reading until we've read thru everything or failed to read.
     amount_data_read_ += result;
     response_reader_->ReadData(
-        data_buffer_.get(),
-        kIOBufferSize,
-        base::Bind(&CheckResponseHelper::OnReadDataComplete,
-                   base::Unretained(this)));
+        data_buffer_.get(), kIOBufferSize,
+        base::BindOnce(&CheckResponseHelper::OnReadDataComplete,
+                       base::Unretained(this)));
     return;
   }
 
diff --git a/content/browser/appcache/appcache_storage.cc b/content/browser/appcache/appcache_storage.cc
index 58b1e85..55b5765 100644
--- a/content/browser/appcache/appcache_storage.cc
+++ b/content/browser/appcache/appcache_storage.cc
@@ -60,8 +60,8 @@
     return;
   reader_.reset(storage_->CreateResponseReader(manifest_url_, response_id_));
   reader_->ReadInfo(info_buffer_.get(),
-                    base::Bind(&ResponseInfoLoadTask::OnReadComplete,
-                               base::Unretained(this)));
+                    base::BindOnce(&ResponseInfoLoadTask::OnReadComplete,
+                                   base::Unretained(this)));
 }
 
 void AppCacheStorage::ResponseInfoLoadTask::OnReadComplete(int result) {
diff --git a/content/browser/appcache/appcache_storage_impl_unittest.cc b/content/browser/appcache/appcache_storage_impl_unittest.cc
index 3621b0d..480ffa86 100644
--- a/content/browser/appcache/appcache_storage_impl_unittest.cc
+++ b/content/browser/appcache/appcache_storage_impl_unittest.cc
@@ -1609,8 +1609,8 @@
     if (phase == 1) {
       // We should not find anything for the online namespace.
       PushNextTask(
-          base::Bind(&AppCacheStorageImplTest::Verify_ExclusionNotFound,
-                     base::Unretained(this), kOnlineNamespace, 2));
+          base::BindOnce(&AppCacheStorageImplTest::Verify_ExclusionNotFound,
+                         base::Unretained(this), kOnlineNamespace, 2));
       storage()->FindResponseForMainRequest(
           kOnlineNamespace, GURL(), delegate());
       return;
diff --git a/content/browser/appcache/appcache_subresource_url_factory.cc b/content/browser/appcache/appcache_subresource_url_factory.cc
index 3e64448..83e4def 100644
--- a/content/browser/appcache/appcache_subresource_url_factory.cc
+++ b/content/browser/appcache/appcache_subresource_url_factory.cc
@@ -59,7 +59,7 @@
         host_(appcache_host),
         weak_factory_(this) {
     DCHECK_CURRENTLY_ON(BrowserThread::IO);
-    remote_binding_.set_connection_error_handler(base::Bind(
+    remote_binding_.set_connection_error_handler(base::BindOnce(
         &SubresourceLoader::OnConnectionError, base::Unretained(this)));
     base::SequencedTaskRunnerHandle::Get()->PostTask(
         FROM_HERE,
diff --git a/content/browser/appcache/appcache_update_job.cc b/content/browser/appcache/appcache_update_job.cc
index 21c8faa..10630d9 100644
--- a/content/browser/appcache/appcache_update_job.cc
+++ b/content/browser/appcache/appcache_update_job.cc
@@ -706,8 +706,8 @@
           new HttpResponseInfoIOBuffer(manifest_response_info_.release()));
       manifest_response_writer_->WriteInfo(
           io_buffer.get(),
-          base::Bind(&AppCacheUpdateJob::OnManifestInfoWriteComplete,
-                     base::Unretained(this)));
+          base::BindOnce(&AppCacheUpdateJob::OnManifestInfoWriteComplete,
+                         base::Unretained(this)));
     }
   } else {
     VLOG(1) << "Request error: " << net_error
@@ -737,10 +737,9 @@
     scoped_refptr<net::StringIOBuffer> io_buffer(
         new net::StringIOBuffer(manifest_data_));
     manifest_response_writer_->WriteData(
-        io_buffer.get(),
-        manifest_data_.length(),
-        base::Bind(&AppCacheUpdateJob::OnManifestDataWriteComplete,
-                   base::Unretained(this)));
+        io_buffer.get(), manifest_data_.length(),
+        base::BindOnce(&AppCacheUpdateJob::OnManifestDataWriteComplete,
+                       base::Unretained(this)));
   } else {
     HandleCacheFailure(
         AppCacheErrorDetails("Failed to write the manifest headers to storage",
@@ -923,8 +922,8 @@
   read_manifest_buffer_ = new net::IOBuffer(kAppCacheFetchBufferSize);
   manifest_response_reader_->ReadData(
       read_manifest_buffer_.get(), kAppCacheFetchBufferSize,
-      base::Bind(&AppCacheUpdateJob::OnManifestDataReadComplete,
-                 base::Unretained(this)));  // async read
+      base::BindOnce(&AppCacheUpdateJob::OnManifestDataReadComplete,
+                     base::Unretained(this)));  // async read
 }
 
 void AppCacheUpdateJob::OnManifestDataReadComplete(int result) {
@@ -932,8 +931,8 @@
     loaded_manifest_data_.append(read_manifest_buffer_->data(), result);
     manifest_response_reader_->ReadData(
         read_manifest_buffer_.get(), kAppCacheFetchBufferSize,
-        base::Bind(&AppCacheUpdateJob::OnManifestDataReadComplete,
-                   base::Unretained(this)));  // read more
+        base::BindOnce(&AppCacheUpdateJob::OnManifestDataReadComplete,
+                       base::Unretained(this)));  // read more
   } else {
     read_manifest_buffer_ = nullptr;
     manifest_response_reader_.reset();
diff --git a/content/browser/appcache/appcache_update_url_fetcher.cc b/content/browser/appcache/appcache_update_url_fetcher.cc
index 527d30d..f364e70 100644
--- a/content/browser/appcache/appcache_update_url_fetcher.cc
+++ b/content/browser/appcache/appcache_update_url_fetcher.cc
@@ -112,7 +112,7 @@
             new net::HttpResponseInfo(request_->GetResponseInfo())));
     response_writer_->WriteInfo(
         io_buffer.get(),
-        base::Bind(&URLFetcher::OnWriteComplete, base::Unretained(this)));
+        base::BindOnce(&URLFetcher::OnWriteComplete, base::Unretained(this)));
   } else {
     ReadResponseData();
   }
@@ -195,7 +195,7 @@
       DCHECK(response_writer_.get());
       response_writer_->WriteData(
           buffer, bytes_read,
-          base::Bind(&URLFetcher::OnWriteComplete, base::Unretained(this)));
+          base::BindOnce(&URLFetcher::OnWriteComplete, base::Unretained(this)));
       return false;  // wait for async write completion to continue reading
     default:
       NOTREACHED();
diff --git a/content/browser/appcache/appcache_url_loader_job.cc b/content/browser/appcache/appcache_url_loader_job.cc
index 92f5e83..7add0b0 100644
--- a/content/browser/appcache/appcache_url_loader_job.cc
+++ b/content/browser/appcache/appcache_url_loader_job.cc
@@ -313,9 +313,9 @@
   uint32_t bytes_to_read =
       std::min<uint32_t>(num_bytes, info_->response_data_size());
 
-  reader_->ReadData(
-      buffer.get(), bytes_to_read,
-      base::Bind(&AppCacheURLLoaderJob::OnReadComplete, GetDerivedWeakPtr()));
+  reader_->ReadData(buffer.get(), bytes_to_read,
+                    base::BindOnce(&AppCacheURLLoaderJob::OnReadComplete,
+                                   GetDerivedWeakPtr()));
 }
 
 void AppCacheURLLoaderJob::NotifyCompleted(int error_code) {
diff --git a/content/browser/appcache/appcache_url_request_job.cc b/content/browser/appcache/appcache_url_request_job.cc
index 6460fbfa..c68a8a6 100644
--- a/content/browser/appcache/appcache_url_request_job.cc
+++ b/content/browser/appcache/appcache_url_request_job.cc
@@ -287,8 +287,8 @@
   DCHECK_NE(buf_size, 0);
   DCHECK(!reader_->IsReadPending());
   reader_->ReadData(buf, buf_size,
-                    base::Bind(&AppCacheURLRequestJob::OnReadComplete,
-                               base::Unretained(this)));
+                    base::BindOnce(&AppCacheURLRequestJob::OnReadComplete,
+                                   base::Unretained(this)));
   return net::ERR_IO_PENDING;
 }
 
diff --git a/content/browser/appcache/appcache_url_request_job_unittest.cc b/content/browser/appcache/appcache_url_request_job_unittest.cc
index 4a907b9..f8413977 100644
--- a/content/browser/appcache/appcache_url_request_job_unittest.cc
+++ b/content/browser/appcache/appcache_url_request_job_unittest.cc
@@ -358,28 +358,27 @@
     write_info_buffer_ = new HttpResponseInfoIOBuffer(head);
     writer_->WriteInfo(
         write_info_buffer_.get(),
-        base::Bind(&AppCacheURLRequestJobTest::OnWriteInfoComplete,
-                   base::Unretained(this)));
+        base::BindOnce(&AppCacheURLRequestJobTest::OnWriteInfoComplete,
+                       base::Unretained(this)));
   }
 
   void WriteResponseBody(scoped_refptr<IOBuffer> io_buffer, int buf_len) {
     EXPECT_FALSE(writer_->IsWritePending());
     write_buffer_ = io_buffer;
     expected_write_result_ = buf_len;
-    writer_->WriteData(write_buffer_.get(),
-                       buf_len,
-                       base::Bind(&AppCacheURLRequestJobTest::OnWriteComplete,
-                                  base::Unretained(this)));
+    writer_->WriteData(
+        write_buffer_.get(), buf_len,
+        base::BindOnce(&AppCacheURLRequestJobTest::OnWriteComplete,
+                       base::Unretained(this)));
   }
 
   void ReadResponseBody(scoped_refptr<IOBuffer> io_buffer, int buf_len) {
     EXPECT_FALSE(reader_->IsReadPending());
     read_buffer_ = io_buffer;
     expected_read_result_ = buf_len;
-    reader_->ReadData(read_buffer_.get(),
-                      buf_len,
-                      base::Bind(&AppCacheURLRequestJobTest::OnReadComplete,
-                                 base::Unretained(this)));
+    reader_->ReadData(read_buffer_.get(), buf_len,
+                      base::BindOnce(&AppCacheURLRequestJobTest::OnReadComplete,
+                                     base::Unretained(this)));
   }
 
   // AppCacheResponseReader / Writer completion callbacks
diff --git a/content/browser/appcache/mock_appcache_storage.cc b/content/browser/appcache/mock_appcache_storage.cc
index 0422108..b9ff16c7 100644
--- a/content/browser/appcache/mock_appcache_storage.cc
+++ b/content/browser/appcache/mock_appcache_storage.cc
@@ -50,7 +50,7 @@
 }
 
 void MockAppCacheStorage::GetAllInfo(Delegate* delegate) {
-  ScheduleTask(base::Bind(
+  ScheduleTask(base::BindOnce(
       &MockAppCacheStorage::ProcessGetAllInfo, weak_factory_.GetWeakPtr(),
       base::WrapRefCounted(GetOrCreateDelegateReference(delegate))));
 }
@@ -59,7 +59,7 @@
   DCHECK(delegate);
   AppCache* cache = working_set_.GetCache(id);
   if (ShouldCacheLoadAppearAsync(cache)) {
-    ScheduleTask(base::Bind(
+    ScheduleTask(base::BindOnce(
         &MockAppCacheStorage::ProcessLoadCache, weak_factory_.GetWeakPtr(), id,
         base::WrapRefCounted(GetOrCreateDelegateReference(delegate))));
     return;
@@ -72,7 +72,7 @@
   DCHECK(delegate);
   AppCacheGroup* group = working_set_.GetGroup(manifest_url);
   if (ShouldGroupLoadAppearAsync(group)) {
-    ScheduleTask(base::Bind(
+    ScheduleTask(base::BindOnce(
         &MockAppCacheStorage::ProcessLoadOrCreateGroup,
         weak_factory_.GetWeakPtr(), manifest_url,
         base::WrapRefCounted(GetOrCreateDelegateReference(delegate))));
@@ -87,11 +87,11 @@
   DCHECK(group && delegate && newest_cache);
 
   // Always make this operation look async.
-  ScheduleTask(
-      base::Bind(&MockAppCacheStorage::ProcessStoreGroupAndNewestCache,
-                 weak_factory_.GetWeakPtr(), base::WrapRefCounted(group),
-                 base::WrapRefCounted(newest_cache),
-                 base::WrapRefCounted(GetOrCreateDelegateReference(delegate))));
+  ScheduleTask(base::BindOnce(
+      &MockAppCacheStorage::ProcessStoreGroupAndNewestCache,
+      weak_factory_.GetWeakPtr(), base::WrapRefCounted(group),
+      base::WrapRefCounted(newest_cache),
+      base::WrapRefCounted(GetOrCreateDelegateReference(delegate))));
 }
 
 void MockAppCacheStorage::FindResponseForMainRequest(
@@ -101,10 +101,10 @@
   // Note: MockAppCacheStorage does not respect the preferred_manifest_url.
 
   // Always make this operation look async.
-  ScheduleTask(
-      base::Bind(&MockAppCacheStorage::ProcessFindResponseForMainRequest,
-                 weak_factory_.GetWeakPtr(), url,
-                 base::WrapRefCounted(GetOrCreateDelegateReference(delegate))));
+  ScheduleTask(base::BindOnce(
+      &MockAppCacheStorage::ProcessFindResponseForMainRequest,
+      weak_factory_.GetWeakPtr(), url,
+      base::WrapRefCounted(GetOrCreateDelegateReference(delegate))));
 }
 
 void MockAppCacheStorage::FindResponseForSubRequest(
@@ -147,11 +147,11 @@
   DCHECK(group && delegate);
 
   // Always make this method look async.
-  ScheduleTask(
-      base::Bind(&MockAppCacheStorage::ProcessMakeGroupObsolete,
-                 weak_factory_.GetWeakPtr(), base::WrapRefCounted(group),
-                 base::WrapRefCounted(GetOrCreateDelegateReference(delegate)),
-                 response_code));
+  ScheduleTask(base::BindOnce(
+      &MockAppCacheStorage::ProcessMakeGroupObsolete,
+      weak_factory_.GetWeakPtr(), base::WrapRefCounted(group),
+      base::WrapRefCounted(GetOrCreateDelegateReference(delegate)),
+      response_code));
 }
 
 void MockAppCacheStorage::StoreEvictionTimes(AppCacheGroup* group) {
diff --git a/content/browser/background_fetch/background_fetch_context.cc b/content/browser/background_fetch/background_fetch_context.cc
index 1d1f5df9..fd899d77 100644
--- a/content/browser/background_fetch/background_fetch_context.cc
+++ b/content/browser/background_fetch/background_fetch_context.cc
@@ -250,7 +250,7 @@
     CleanupRegistration(registration_id, {});
 
     event_dispatcher_.DispatchBackgroundFetchAbortEvent(
-        registration_id, base::Bind(&base::DoNothing));
+        registration_id, base::BindOnce(&base::DoNothing));
   } else {
     data_manager_.GetSettledFetchesForRegistration(
         registration_id,
@@ -278,21 +278,23 @@
   if (background_fetch_succeeded) {
     event_dispatcher_.DispatchBackgroundFetchedEvent(
         registration_id, std::move(settled_fetches),
-        base::Bind(&BackgroundFetchContext::CleanupRegistration,
-                   weak_factory_.GetWeakPtr(), registration_id,
-                   // The blob uuid is sent as part of |settled_fetches|. Bind
-                   // |blob_data_handles| to the callback to keep them alive
-                   // until the waitUntil event is resolved.
-                   std::move(blob_data_handles)));
+        base::BindOnce(
+            &BackgroundFetchContext::CleanupRegistration,
+            weak_factory_.GetWeakPtr(), registration_id,
+            // The blob uuid is sent as part of |settled_fetches|. Bind
+            // |blob_data_handles| to the callback to keep them alive
+            // until the waitUntil event is resolved.
+            std::move(blob_data_handles)));
   } else {
     event_dispatcher_.DispatchBackgroundFetchFailEvent(
         registration_id, std::move(settled_fetches),
-        base::Bind(&BackgroundFetchContext::CleanupRegistration,
-                   weak_factory_.GetWeakPtr(), registration_id,
-                   // The blob uuid is sent as part of |settled_fetches|. Bind
-                   // |blob_data_handles| to the callback to keep them alive
-                   // until the waitUntil event is resolved.
-                   std::move(blob_data_handles)));
+        base::BindOnce(
+            &BackgroundFetchContext::CleanupRegistration,
+            weak_factory_.GetWeakPtr(), registration_id,
+            // The blob uuid is sent as part of |settled_fetches|. Bind
+            // |blob_data_handles| to the callback to keep them alive
+            // until the waitUntil event is resolved.
+            std::move(blob_data_handles)));
   }
 }
 
@@ -317,8 +319,8 @@
   // as a fallback in that case, and deletes the registration on next startup.
   registration_notifier_->AddGarbageCollectionCallback(
       registration_id.unique_id(),
-      base::Bind(&BackgroundFetchContext::LastObserverGarbageCollected,
-                 weak_factory_.GetWeakPtr(), registration_id));
+      base::BindOnce(&BackgroundFetchContext::LastObserverGarbageCollected,
+                     weak_factory_.GetWeakPtr(), registration_id));
 }
 
 void BackgroundFetchContext::LastObserverGarbageCollected(
diff --git a/content/browser/background_fetch/background_fetch_data_manager.cc b/content/browser/background_fetch/background_fetch_data_manager.cc
index 89fa341d..f15fbd5 100644
--- a/content/browser/background_fetch/background_fetch_data_manager.cc
+++ b/content/browser/background_fetch/background_fetch_data_manager.cc
@@ -159,8 +159,8 @@
       FROM_HERE, BrowserThread::GetTaskRunnerForThread(BrowserThread::IO),
       // Normally weak pointers must be obtained on the IO thread, but it's ok
       // here as the factory cannot be destroyed before the constructor ends.
-      base::Bind(&BackgroundFetchDataManager::Cleanup,
-                 weak_ptr_factory_.GetWeakPtr()));
+      base::BindOnce(&BackgroundFetchDataManager::Cleanup,
+                     weak_ptr_factory_.GetWeakPtr()));
 }
 
 void BackgroundFetchDataManager::Cleanup() {
diff --git a/content/browser/background_fetch/background_fetch_data_manager_unittest.cc b/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
index 1c9f5c0..b9b6e35 100644
--- a/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
+++ b/content/browser/background_fetch/background_fetch_data_manager_unittest.cc
@@ -197,8 +197,8 @@
         ->context_wrapper()
         ->GetRegistrationUserDataByKeyPrefix(
             service_worker_registration_id, key_prefix,
-            base::Bind(&DidGetRegistrationUserDataByKeyPrefix,
-                       run_loop.QuitClosure(), &data));
+            base::BindOnce(&DidGetRegistrationUserDataByKeyPrefix,
+                           run_loop.QuitClosure(), &data));
     run_loop.Run();
 
     return data;
diff --git a/content/browser/background_fetch/background_fetch_test_base.cc b/content/browser/background_fetch/background_fetch_test_base.cc
index f5fd904..a455fc5 100644
--- a/content/browser/background_fetch/background_fetch_test_base.cc
+++ b/content/browser/background_fetch/background_fetch_test_base.cc
@@ -113,8 +113,8 @@
     base::RunLoop run_loop;
     embedded_worker_test_helper_.context()->storage()->FindRegistrationForId(
         service_worker_registration_id, origin_.GetURL(),
-        base::Bind(&DidFindServiceWorkerRegistration,
-                   &service_worker_registration, run_loop.QuitClosure()));
+        base::BindOnce(&DidFindServiceWorkerRegistration,
+                       &service_worker_registration, run_loop.QuitClosure()));
 
     run_loop.Run();
   }
diff --git a/content/browser/background_fetch/storage/cleanup_task.cc b/content/browser/background_fetch/storage/cleanup_task.cc
index a95ef5b..5a2e517 100644
--- a/content/browser/background_fetch/storage/cleanup_task.cc
+++ b/content/browser/background_fetch/storage/cleanup_task.cc
@@ -27,8 +27,8 @@
 
 void CleanupTask::Start() {
   service_worker_context()->GetUserDataForAllRegistrationsByKeyPrefix(
-      kRegistrationKeyPrefix, base::Bind(&CleanupTask::DidGetRegistrations,
-                                         weak_factory_.GetWeakPtr()));
+      kRegistrationKeyPrefix, base::BindOnce(&CleanupTask::DidGetRegistrations,
+                                             weak_factory_.GetWeakPtr()));
 }
 
 void CleanupTask::DidGetRegistrations(
@@ -42,8 +42,8 @@
 
   service_worker_context()->GetUserDataForAllRegistrationsByKeyPrefix(
       kActiveRegistrationUniqueIdKeyPrefix,
-      base::Bind(&CleanupTask::DidGetActiveUniqueIds,
-                 weak_factory_.GetWeakPtr(), registration_data));
+      base::BindOnce(&CleanupTask::DidGetActiveUniqueIds,
+                     weak_factory_.GetWeakPtr(), registration_data));
 }
 
 void CleanupTask::DidGetActiveUniqueIds(
diff --git a/content/browser/background_fetch/storage/create_registration_task.cc b/content/browser/background_fetch/storage/create_registration_task.cc
index e949232..20bb337d 100644
--- a/content/browser/background_fetch/storage/create_registration_task.cc
+++ b/content/browser/background_fetch/storage/create_registration_task.cc
@@ -40,8 +40,8 @@
   service_worker_context()->GetRegistrationUserData(
       registration_id_.service_worker_registration_id(),
       {ActiveRegistrationUniqueIdKey(registration_id_.developer_id())},
-      base::Bind(&CreateRegistrationTask::DidGetUniqueId,
-                 weak_factory_.GetWeakPtr()));
+      base::BindOnce(&CreateRegistrationTask::DidGetUniqueId,
+                     weak_factory_.GetWeakPtr()));
 }
 
 void CreateRegistrationTask::DidGetUniqueId(
diff --git a/content/browser/background_fetch/storage/delete_registration_task.cc b/content/browser/background_fetch/storage/delete_registration_task.cc
index 09653f9..0663fc47 100644
--- a/content/browser/background_fetch/storage/delete_registration_task.cc
+++ b/content/browser/background_fetch/storage/delete_registration_task.cc
@@ -55,8 +55,8 @@
   // Get the registration |developer_id| to check it was deactivated.
   service_worker_context()->GetRegistrationUserData(
       service_worker_registration_id_, {RegistrationKey(unique_id_)},
-      base::Bind(&DeleteRegistrationTask::DidGetRegistration,
-                 weak_factory_.GetWeakPtr()));
+      base::BindOnce(&DeleteRegistrationTask::DidGetRegistration,
+                     weak_factory_.GetWeakPtr()));
 #else
   DidGetRegistration({}, SERVICE_WORKER_OK);
 #endif  // DCHECK_IS_ON()
@@ -74,7 +74,7 @@
       service_worker_context()->GetRegistrationUserData(
           service_worker_registration_id_,
           {ActiveRegistrationUniqueIdKey(registration_proto.developer_id())},
-          base::Bind(&DCheckRegistrationNotActive, unique_id_));
+          base::BindOnce(&DCheckRegistrationNotActive, unique_id_));
     } else {
       NOTREACHED()
           << "Database is corrupt";  // TODO(crbug.com/780027): Nuke it.
diff --git a/content/browser/background_fetch/storage/get_developer_ids_task.cc b/content/browser/background_fetch/storage/get_developer_ids_task.cc
index 9de40d9d..03b9c849 100644
--- a/content/browser/background_fetch/storage/get_developer_ids_task.cc
+++ b/content/browser/background_fetch/storage/get_developer_ids_task.cc
@@ -29,8 +29,8 @@
 void GetDeveloperIdsTask::Start() {
   service_worker_context()->GetRegistrationUserKeysAndDataByKeyPrefix(
       service_worker_registration_id_, {kActiveRegistrationUniqueIdKeyPrefix},
-      base::Bind(&GetDeveloperIdsTask::DidGetUniqueIds,
-                 weak_factory_.GetWeakPtr()));
+      base::BindOnce(&GetDeveloperIdsTask::DidGetUniqueIds,
+                     weak_factory_.GetWeakPtr()));
 }
 
 void GetDeveloperIdsTask::DidGetUniqueIds(
diff --git a/content/browser/background_fetch/storage/get_registration_task.cc b/content/browser/background_fetch/storage/get_registration_task.cc
index dd779bf..57c46f9 100644
--- a/content/browser/background_fetch/storage/get_registration_task.cc
+++ b/content/browser/background_fetch/storage/get_registration_task.cc
@@ -34,8 +34,8 @@
   service_worker_context()->GetRegistrationUserData(
       service_worker_registration_id_,
       {ActiveRegistrationUniqueIdKey(developer_id_)},
-      base::Bind(&GetRegistrationTask::DidGetUniqueId,
-                 weak_factory_.GetWeakPtr()));
+      base::BindOnce(&GetRegistrationTask::DidGetUniqueId,
+                     weak_factory_.GetWeakPtr()));
 }
 
 void GetRegistrationTask::DidGetUniqueId(const std::vector<std::string>& data,
@@ -50,8 +50,8 @@
       DCHECK_EQ(1u, data.size());
       service_worker_context()->GetRegistrationUserData(
           service_worker_registration_id_, {RegistrationKey(data[0])},
-          base::Bind(&GetRegistrationTask::DidGetRegistration,
-                     weak_factory_.GetWeakPtr()));
+          base::BindOnce(&GetRegistrationTask::DidGetRegistration,
+                         weak_factory_.GetWeakPtr()));
       return;
     case DatabaseStatus::kFailed:
       std::move(callback_).Run(
diff --git a/content/browser/background_fetch/storage/mark_registration_for_deletion_task.cc b/content/browser/background_fetch/storage/mark_registration_for_deletion_task.cc
index d665c8b..c6156f179 100644
--- a/content/browser/background_fetch/storage/mark_registration_for_deletion_task.cc
+++ b/content/browser/background_fetch/storage/mark_registration_for_deletion_task.cc
@@ -33,8 +33,8 @@
       registration_id_.service_worker_registration_id(),
       {ActiveRegistrationUniqueIdKey(registration_id_.developer_id()),
        RegistrationKey(registration_id_.unique_id())},
-      base::Bind(&MarkRegistrationForDeletionTask::DidGetActiveUniqueId,
-                 weak_factory_.GetWeakPtr()));
+      base::BindOnce(&MarkRegistrationForDeletionTask::DidGetActiveUniqueId,
+                     weak_factory_.GetWeakPtr()));
 }
 
 void MarkRegistrationForDeletionTask::DidGetActiveUniqueId(
diff --git a/content/browser/cache_storage/cache_storage_manager.cc b/content/browser/cache_storage/cache_storage_manager.cc
index f31677e7..cf3c05c 100644
--- a/content/browser/cache_storage/cache_storage_manager.cc
+++ b/content/browser/cache_storage/cache_storage_manager.cc
@@ -410,7 +410,7 @@
 
 void CacheStorageManager::DeleteOriginData(const url::Origin& origin) {
   DCHECK_CURRENTLY_ON(BrowserThread::IO);
-  DeleteOriginData(origin, base::Bind(&EmptyQuotaStatusCallback));
+  DeleteOriginData(origin, base::BindOnce(&EmptyQuotaStatusCallback));
 }
 
 void CacheStorageManager::DeleteOriginDidClose(
diff --git a/content/browser/cache_storage/cache_storage_manager_unittest.cc b/content/browser/cache_storage/cache_storage_manager_unittest.cc
index 99d6046b..89ae302 100644
--- a/content/browser/cache_storage/cache_storage_manager_unittest.cc
+++ b/content/browser/cache_storage/cache_storage_manager_unittest.cc
@@ -491,8 +491,9 @@
   int64_t GetOriginUsage(const url::Origin& origin) {
     base::RunLoop loop;
     cache_manager_->GetOriginUsage(
-        origin, base::Bind(&CacheStorageManagerTest::UsageCallback,
-                           base::Unretained(this), base::Unretained(&loop)));
+        origin,
+        base::BindOnce(&CacheStorageManagerTest::UsageCallback,
+                       base::Unretained(this), base::Unretained(&loop)));
     loop.Run();
     return callback_usage_;
   }
@@ -1717,8 +1718,8 @@
     base::RunLoop loop;
     quota_client_->GetOriginUsage(
         origin, StorageType::kTemporary,
-        base::Bind(&CacheStorageQuotaClientTest::QuotaUsageCallback,
-                   base::Unretained(this), base::Unretained(&loop)));
+        base::BindOnce(&CacheStorageQuotaClientTest::QuotaUsageCallback,
+                       base::Unretained(this), base::Unretained(&loop)));
     loop.Run();
     return callback_quota_usage_;
   }
@@ -1727,8 +1728,8 @@
     base::RunLoop loop;
     quota_client_->GetOriginsForType(
         StorageType::kTemporary,
-        base::Bind(&CacheStorageQuotaClientTest::OriginsCallback,
-                   base::Unretained(this), base::Unretained(&loop)));
+        base::BindOnce(&CacheStorageQuotaClientTest::OriginsCallback,
+                       base::Unretained(this), base::Unretained(&loop)));
     loop.Run();
     return callback_origins_.size();
   }
@@ -1737,8 +1738,8 @@
     base::RunLoop loop;
     quota_client_->GetOriginsForHost(
         StorageType::kTemporary, host,
-        base::Bind(&CacheStorageQuotaClientTest::OriginsCallback,
-                   base::Unretained(this), base::Unretained(&loop)));
+        base::BindOnce(&CacheStorageQuotaClientTest::OriginsCallback,
+                       base::Unretained(this), base::Unretained(&loop)));
     loop.Run();
     return callback_origins_.size();
   }
@@ -1747,8 +1748,8 @@
     base::RunLoop loop;
     quota_client_->DeleteOriginData(
         origin, StorageType::kTemporary,
-        base::Bind(&CacheStorageQuotaClientTest::DeleteOriginCallback,
-                   base::Unretained(this), base::Unretained(&loop)));
+        base::BindOnce(&CacheStorageQuotaClientTest::DeleteOriginCallback,
+                       base::Unretained(this), base::Unretained(&loop)));
     loop.Run();
     return callback_status_ == blink::mojom::QuotaStatusCode::kOk;
   }
diff --git a/content/browser/compositor/offscreen_browser_compositor_output_surface.cc b/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
index f4775b4..05f9a5f 100644
--- a/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
+++ b/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
@@ -159,7 +159,7 @@
   gl->GenUnverifiedSyncTokenCHROMIUM(sync_token.GetData());
   context_provider_->ContextSupport()->SignalSyncToken(
       sync_token,
-      base::Bind(
+      base::BindOnce(
           &OffscreenBrowserCompositorOutputSurface::OnSwapBuffersComplete,
           weak_ptr_factory_.GetWeakPtr(), frame.latency_info, ++swap_id_));
 }
diff --git a/content/browser/compositor/reflector_impl.cc b/content/browser/compositor/reflector_impl.cc
index 31544bd..7630024 100644
--- a/content/browser/compositor/reflector_impl.cc
+++ b/content/browser/compositor/reflector_impl.cc
@@ -164,7 +164,7 @@
                                           mailbox_->holder().texture_target,
                                           mailbox_->holder().sync_token),
         viz::SingleReleaseCallback::Create(
-            base::Bind(ReleaseMailbox, mailbox_)),
+            base::BindOnce(ReleaseMailbox, mailbox_)),
         source_size);
     layer_data->needs_set_mailbox = false;
   } else {
diff --git a/content/browser/devtools/devtools_io_context.cc b/content/browser/devtools/devtools_io_context.cc
index 9963700..24a756c 100644
--- a/content/browser/devtools/devtools_io_context.cc
+++ b/content/browser/devtools/devtools_io_context.cc
@@ -305,7 +305,7 @@
   is_binary_ = !IsTextMimeType(blob_handle_->content_type());
   open_callback_ = std::move(callback);
   blob_handle_->RunOnConstructionComplete(
-      base::Bind(&BlobStream::OnBlobConstructionComplete, this));
+      base::BindOnce(&BlobStream::OnBlobConstructionComplete, this));
 }
 
 void BlobStream::OnBlobConstructionComplete(storage::BlobStatus status) {
@@ -380,7 +380,7 @@
   int bytes_read;
   BlobReader::Status status =
       blob_reader_->Read(io_buf_.get(), request.max_size, &bytes_read,
-                         base::Bind(&BlobStream::OnReadComplete, this));
+                         base::BindOnce(&BlobStream::OnReadComplete, this));
   if (status == BlobReader::Status::IO_PENDING)
     return;
   // This is for uniformity with the asynchronous case.
@@ -429,7 +429,7 @@
   DCHECK(!blob_reader_);
   blob_reader_ = blob_handle_->CreateReader();
   BlobReader::Status status = blob_reader_->CalculateSize(
-      base::Bind(&BlobStream::OnCalculateSizeComplete, this));
+      base::BindOnce(&BlobStream::OnCalculateSizeComplete, this));
   if (status != BlobReader::Status::IO_PENDING) {
     OnCalculateSizeComplete(status == BlobReader::Status::NET_ERROR
                                 ? blob_reader_->net_error()
diff --git a/content/browser/devtools/protocol/service_worker_handler.cc b/content/browser/devtools/protocol/service_worker_handler.cc
index c72e2fb1..ee6ee4d9 100644
--- a/content/browser/devtools/protocol/service_worker_handler.cc
+++ b/content/browser/devtools/protocol/service_worker_handler.cc
@@ -147,8 +147,8 @@
                            bool last_chance) {
   context->FindReadyRegistrationForId(
       registration_id, origin,
-      base::Bind(&DidFindRegistrationForDispatchSyncEventOnIO, sync_context,
-                 tag, last_chance));
+      base::BindOnce(&DidFindRegistrationForDispatchSyncEventOnIO, sync_context,
+                     tag, last_chance));
 }
 
 }  // namespace
@@ -221,7 +221,8 @@
     return CreateDomainNotEnabledErrorResponse();
   if (!context_)
     return CreateContextErrorResponse();
-  context_->UnregisterServiceWorker(GURL(scope_url), base::Bind(&ResultNoOp));
+  context_->UnregisterServiceWorker(GURL(scope_url),
+                                    base::BindOnce(&ResultNoOp));
   return Response::OK();
 }
 
diff --git a/content/browser/download/download_file_impl.cc b/content/browser/download/download_file_impl.cc
index 2a4242f..407fc1c 100644
--- a/content/browser/download/download_file_impl.cc
+++ b/content/browser/download/download_file_impl.cc
@@ -79,9 +79,9 @@
       std::make_unique<mojo::Binding<download::mojom::DownloadStreamClient>>(
           this, std::move(stream_handle_->client_request));
   binding_->set_connection_error_handler(
-      base::Bind(&DownloadFileImpl::SourceStream::OnStreamCompleted,
-                 base::Unretained(this),
-                 download::mojom::NetworkRequestStatus::USER_CANCELED));
+      base::BindOnce(&DownloadFileImpl::SourceStream::OnStreamCompleted,
+                     base::Unretained(this),
+                     download::mojom::NetworkRequestStatus::USER_CANCELED));
   handle_watcher_ = std::make_unique<mojo::SimpleWatcher>(
       FROM_HERE, mojo::SimpleWatcher::ArmingPolicy::AUTOMATIC);
 }
diff --git a/content/browser/fileapi/fileapi_message_filter.cc b/content/browser/fileapi/fileapi_message_filter.cc
index 84ce7fe..3eb75cf 100644
--- a/content/browser/fileapi/fileapi_message_filter.cc
+++ b/content/browser/fileapi/fileapi_message_filter.cc
@@ -604,7 +604,7 @@
           context_->default_file_task_runner());
     }
     file_ref->AddFinalReleaseCallback(
-        base::Bind(&RevokeFilePermission, process_id_));
+        base::BindOnce(&RevokeFilePermission, process_id_));
   }
 
   if (file_ref.get()) {
diff --git a/content/browser/frame_host/frame_service_base_unittest.cc b/content/browser/frame_host/frame_service_base_unittest.cc
index 027c4fc..37b2bc3 100644
--- a/content/browser/frame_host/frame_service_base_unittest.cc
+++ b/content/browser/frame_host/frame_service_base_unittest.cc
@@ -79,8 +79,8 @@
   void CreateEchoImpl(RenderFrameHost* rfh) {
     DCHECK(!is_echo_impl_alive_);
     new EchoImpl(rfh, mojo::MakeRequest(&echo_ptr_),
-                 base::Bind(&FrameServiceBaseTest::OnEchoImplDestructed,
-                            base::Unretained(this)));
+                 base::BindOnce(&FrameServiceBaseTest::OnEchoImplDestructed,
+                                base::Unretained(this)));
     is_echo_impl_alive_ = true;
   }
 
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
index 4fe8031..5956e65 100644
--- a/content/browser/frame_host/render_frame_host_impl.cc
+++ b/content/browser/frame_host/render_frame_host_impl.cc
@@ -369,8 +369,8 @@
 
   BrowserThread::PostTask(
       BrowserThread::IO, FROM_HERE,
-      base::Bind(&ResourceSchedulerFilter::OnDidCommitMainframeNavigation,
-                 render_process_id, params.render_view_routing_id));
+      base::BindOnce(&ResourceSchedulerFilter::OnDidCommitMainframeNavigation,
+                     render_process_id, params.render_view_routing_id));
 }
 
 bool IsOutOfProcessNetworkService() {
diff --git a/content/browser/histogram_controller.cc b/content/browser/histogram_controller.cc
index da0031c..100d8863 100644
--- a/content/browser/histogram_controller.cc
+++ b/content/browser/histogram_controller.cc
@@ -115,9 +115,9 @@
     content::mojom::ChildHistogramFetcherPtr child_histogram_fetcher) {
   // Broken pipe means remove this from the map. The map size is a proxy for
   // the number of known processes
-  child_histogram_fetcher.set_connection_error_handler(
-      base::Bind(&HistogramController::RemoveChildHistogramFetcherInterface<T>,
-                 base::Unretained(this), base::Unretained(host)));
+  child_histogram_fetcher.set_connection_error_handler(base::BindOnce(
+      &HistogramController::RemoveChildHistogramFetcherInterface<T>,
+      base::Unretained(this), base::Unretained(host)));
   GetChildHistogramFetcherMap<T>()[host] = std::move(child_histogram_fetcher);
 }
 
diff --git a/content/browser/indexed_db/indexed_db_internals_ui.cc b/content/browser/indexed_db/indexed_db_internals_ui.cc
index db14ed0..1ad9af6 100644
--- a/content/browser/indexed_db/indexed_db_internals_ui.cc
+++ b/content/browser/indexed_db/indexed_db_internals_ui.cc
@@ -363,8 +363,8 @@
   base::PostTaskWithTraits(FROM_HERE,
                            {base::MayBlock(), base::TaskPriority::BACKGROUND,
                             base::TaskShutdownBehavior::BLOCK_SHUTDOWN},
-                           base::Bind(base::IgnoreResult(&base::DeleteFile),
-                                      std::move(temp_dir_), true));
+                           base::BindOnce(base::IgnoreResult(&base::DeleteFile),
+                                          std::move(temp_dir_), true));
 }
 
 void IndexedDBInternalsUI::OnDownloadStarted(
diff --git a/content/browser/indexed_db/indexed_db_quota_client_unittest.cc b/content/browser/indexed_db/indexed_db_quota_client_unittest.cc
index abab87d..61a4ef4e4 100644
--- a/content/browser/indexed_db/indexed_db_quota_client_unittest.cc
+++ b/content/browser/indexed_db/indexed_db_quota_client_unittest.cc
@@ -82,8 +82,8 @@
     usage_ = -1;
     client->GetOriginUsage(
         origin, type,
-        base::Bind(&IndexedDBQuotaClientTest::OnGetOriginUsageComplete,
-                   weak_factory_.GetWeakPtr()));
+        base::BindOnce(&IndexedDBQuotaClientTest::OnGetOriginUsageComplete,
+                       weak_factory_.GetWeakPtr()));
     RunAllTasksUntilIdle();
     EXPECT_GT(usage_, -1);
     return usage_;
@@ -93,9 +93,8 @@
                                                  StorageType type) {
     origins_.clear();
     client->GetOriginsForType(
-        type,
-        base::Bind(&IndexedDBQuotaClientTest::OnGetOriginsComplete,
-                   weak_factory_.GetWeakPtr()));
+        type, base::BindOnce(&IndexedDBQuotaClientTest::OnGetOriginsComplete,
+                             weak_factory_.GetWeakPtr()));
     RunAllTasksUntilIdle();
     return origins_;
   }
@@ -105,10 +104,9 @@
                                                  const std::string& host) {
     origins_.clear();
     client->GetOriginsForHost(
-        type,
-        host,
-        base::Bind(&IndexedDBQuotaClientTest::OnGetOriginsComplete,
-                   weak_factory_.GetWeakPtr()));
+        type, host,
+        base::BindOnce(&IndexedDBQuotaClientTest::OnGetOriginsComplete,
+                       weak_factory_.GetWeakPtr()));
     RunAllTasksUntilIdle();
     return origins_;
   }
@@ -119,8 +117,8 @@
     delete_status_ = blink::mojom::QuotaStatusCode::kUnknown;
     client->DeleteOriginData(
         origin, type,
-        base::Bind(&IndexedDBQuotaClientTest::OnDeleteOriginComplete,
-                   weak_factory_.GetWeakPtr()));
+        base::BindOnce(&IndexedDBQuotaClientTest::OnDeleteOriginComplete,
+                       weak_factory_.GetWeakPtr()));
     RunAllTasksUntilIdle();
     return delete_status_;
   }
diff --git a/content/browser/loader/redirect_to_file_resource_handler.cc b/content/browser/loader/redirect_to_file_resource_handler.cc
index 9a47991..a6ce3d0b 100644
--- a/content/browser/loader/redirect_to_file_resource_handler.cc
+++ b/content/browser/loader/redirect_to_file_resource_handler.cc
@@ -77,7 +77,7 @@
     DCHECK(handler_);
     int result = file_stream_->Write(
         buf, buf_len,
-        base::Bind(&Writer::DidWriteToFile, base::Unretained(this)));
+        base::BindOnce(&Writer::DidWriteToFile, base::Unretained(this)));
     if (result == net::ERR_IO_PENDING)
       is_writing_ = true;
     return result;
@@ -106,8 +106,8 @@
 
   void CloseAndDelete() {
     DCHECK(!is_writing_);
-    int result = file_stream_->Close(base::Bind(&Writer::DidClose,
-                                                base::Unretained(this)));
+    int result = file_stream_->Close(
+        base::BindOnce(&Writer::DidClose, base::Unretained(this)));
     if (result != net::ERR_IO_PENDING)
       DidClose(result);
   }
diff --git a/content/browser/loader/resource_dispatcher_host_impl.cc b/content/browser/loader/resource_dispatcher_host_impl.cc
index e7b9e8f..f22a282 100644
--- a/content/browser/loader/resource_dispatcher_host_impl.cc
+++ b/content/browser/loader/resource_dispatcher_host_impl.cc
@@ -1484,8 +1484,7 @@
   // reference to the temp file that outlives the url loaded that it was
   // loaded with to keep the file (and permissions) alive.
   reference->AddFinalReleaseCallback(
-      base::Bind(&RemoveDownloadFileFromChildSecurityPolicy,
-                 child_id));
+      base::BindOnce(&RemoveDownloadFileFromChildSecurityPolicy, child_id));
 }
 
 void ResourceDispatcherHostImpl::UnregisterDownloadedTempFile(
diff --git a/content/browser/loader/resource_dispatcher_host_unittest.cc b/content/browser/loader/resource_dispatcher_host_unittest.cc
index 5596260..854858d 100644
--- a/content/browser/loader/resource_dispatcher_host_unittest.cc
+++ b/content/browser/loader/resource_dispatcher_host_unittest.cc
@@ -613,9 +613,8 @@
   explicit ShareableFileReleaseWaiter(const base::FilePath& path) {
     scoped_refptr<ShareableFileReference> file =
         ShareableFileReference::Get(path);
-    file->AddFinalReleaseCallback(
-        base::Bind(&ShareableFileReleaseWaiter::Released,
-                   base::Unretained(this)));
+    file->AddFinalReleaseCallback(base::BindOnce(
+        &ShareableFileReleaseWaiter::Released, base::Unretained(this)));
   }
 
   void Wait() {
diff --git a/content/browser/loader/resource_loader_unittest.cc b/content/browser/loader/resource_loader_unittest.cc
index eb0225b..38a7b1773 100644
--- a/content/browser/loader/resource_loader_unittest.cc
+++ b/content/browser/loader/resource_loader_unittest.cc
@@ -337,16 +337,17 @@
  private:
   int InitInternal(const net::NetLogWithSource& net_log) override {
     SetSize(size_);
-    stream_.Init(base::Bind(&NonChunkedUploadDataStream::OnInitCompleted,
-                            base::Unretained(this)),
+    stream_.Init(base::BindOnce(&NonChunkedUploadDataStream::OnInitCompleted,
+                                base::Unretained(this)),
                  net_log);
     return net::OK;
   }
 
   int ReadInternal(net::IOBuffer* buf, int buf_len) override {
-    return stream_.Read(buf, buf_len,
-                        base::Bind(&NonChunkedUploadDataStream::OnReadCompleted,
-                                   base::Unretained(this)));
+    return stream_.Read(
+        buf, buf_len,
+        base::BindOnce(&NonChunkedUploadDataStream::OnReadCompleted,
+                       base::Unretained(this)));
   }
 
   void ResetInternal() override { stream_.Reset(); }
diff --git a/content/browser/media/cdm_storage_impl.cc b/content/browser/media/cdm_storage_impl.cc
index 5b4be43..dd19f2b 100644
--- a/content/browser/media/cdm_storage_impl.cc
+++ b/content/browser/media/cdm_storage_impl.cc
@@ -145,8 +145,8 @@
   file_system_context_->OpenPluginPrivateFileSystem(
       origin().GetURL(), storage::kFileSystemTypePluginPrivate, fsid,
       cdm_file_system_id_, storage::OPEN_FILE_SYSTEM_CREATE_IF_NONEXISTENT,
-      base::Bind(&CdmStorageImpl::OnFileSystemOpened,
-                 weak_factory_.GetWeakPtr()));
+      base::BindOnce(&CdmStorageImpl::OnFileSystemOpened,
+                     weak_factory_.GetWeakPtr()));
 }
 
 void CdmStorageImpl::OnFileSystemOpened(base::File::Error error) {
diff --git a/content/browser/media/cdm_storage_impl_unittest.cc b/content/browser/media/cdm_storage_impl_unittest.cc
index b7e0dbc..07ebf471 100644
--- a/content/browser/media/cdm_storage_impl_unittest.cc
+++ b/content/browser/media/cdm_storage_impl_unittest.cc
@@ -78,8 +78,8 @@
     DVLOG(3) << __func__;
 
     cdm_storage_->Open(
-        name, base::Bind(&CdmStorageTest::OpenDone, base::Unretained(this),
-                         status, file, cdm_file));
+        name, base::BindOnce(&CdmStorageTest::OpenDone, base::Unretained(this),
+                             status, file, cdm_file));
     RunAndWaitForResult();
     return file->IsValid();
   }
@@ -88,9 +88,9 @@
              const std::vector<uint8_t>& data,
              base::File* file) {
     bool status;
-    cdm_file->OpenFileForWriting(base::Bind(&CdmStorageTest::FileOpenedForWrite,
-                                            base::Unretained(this), cdm_file,
-                                            data, file, &status));
+    cdm_file->OpenFileForWriting(
+        base::BindOnce(&CdmStorageTest::FileOpenedForWrite,
+                       base::Unretained(this), cdm_file, data, file, &status));
     RunAndWaitForResult();
     return status;
   }
@@ -123,8 +123,8 @@
     int bytes_written = file_to_write.Write(
         0, reinterpret_cast<const char*>(data.data()), bytes_to_write);
     *status = bytes_to_write == bytes_written;
-    cdm_file->CommitWrite(
-        base::Bind(&CdmStorageTest::WriteDone, base::Unretained(this), file));
+    cdm_file->CommitWrite(base::BindOnce(&CdmStorageTest::WriteDone,
+                                         base::Unretained(this), file));
   }
 
   void WriteDone(base::File* file, base::File new_file_for_reading) {
diff --git a/content/browser/network_service_client.cc b/content/browser/network_service_client.cc
index 6071f44..5686dc1 100644
--- a/content/browser/network_service_client.cc
+++ b/content/browser/network_service_client.cc
@@ -66,9 +66,9 @@
         browser_context->GetResourceContext();
     BrowserThread::PostTask(
         BrowserThread::IO, FROM_HERE,
-        base::Bind(&SSLClientAuthDelegate::CreateSSLClientAuthHandler,
-                   base::Unretained(this), resource_context,
-                   web_contents_getter));
+        base::BindOnce(&SSLClientAuthDelegate::CreateSSLClientAuthHandler,
+                       base::Unretained(this), resource_context,
+                       web_contents_getter));
   }
   ~SSLClientAuthDelegate() override {}
 
diff --git a/content/browser/notifications/notification_event_dispatcher_impl.cc b/content/browser/notifications/notification_event_dispatcher_impl.cc
index dc750b2..3b593eb 100644
--- a/content/browser/notifications/notification_event_dispatcher_impl.cc
+++ b/content/browser/notifications/notification_event_dispatcher_impl.cc
@@ -177,9 +177,9 @@
 
   service_worker_context->FindReadyRegistrationForId(
       notification_database_data.service_worker_registration_id, origin,
-      base::Bind(&DispatchNotificationEventOnRegistration,
-                 notification_database_data, notification_context,
-                 notification_action_callback, dispatch_error_callback));
+      base::BindOnce(&DispatchNotificationEventOnRegistration,
+                     notification_database_data, notification_context,
+                     notification_action_callback, dispatch_error_callback));
 }
 
 // Reads the data associated with the |notification_id| belonging to |origin|
diff --git a/content/browser/notifications/notification_message_filter.cc b/content/browser/notifications/notification_message_filter.cc
index 2184fe7a6..83db315 100644
--- a/content/browser/notifications/notification_message_filter.cc
+++ b/content/browser/notifications/notification_message_filter.cc
@@ -171,9 +171,10 @@
   // Get the service worker scope.
   service_worker_context_->FindReadyRegistrationForId(
       service_worker_registration_id, origin,
-      base::Bind(&NotificationMessageFilter::DidFindServiceWorkerRegistration,
-                 weak_factory_io_.GetWeakPtr(), request_id, origin,
-                 notification_data, notification_resources, notification_id));
+      base::BindOnce(
+          &NotificationMessageFilter::DidFindServiceWorkerRegistration,
+          weak_factory_io_.GetWeakPtr(), request_id, origin, notification_data,
+          notification_resources, notification_id));
 }
 
 void NotificationMessageFilter::DidFindServiceWorkerRegistration(
diff --git a/content/browser/payments/payment_app_content_unittest_base.cc b/content/browser/payments/payment_app_content_unittest_base.cc
index 1e64f15..51207ef 100644
--- a/content/browser/payments/payment_app_content_unittest_base.cc
+++ b/content/browser/payments/payment_app_content_unittest_base.cc
@@ -162,7 +162,7 @@
   EXPECT_FALSE(registration->waiting_version());
   EXPECT_FALSE(registration->installing_version());
   registration->active_version()->StopWorker(
-      base::Bind(&StopWorkerCallback, &called));
+      base::BindOnce(&StopWorkerCallback, &called));
   base::RunLoop().RunUntilIdle();
   EXPECT_TRUE(called);
 
diff --git a/content/browser/payments/payment_app_database.cc b/content/browser/payments/payment_app_database.cc
index 1069edc..ba8cf8e 100644
--- a/content/browser/payments/payment_app_database.cc
+++ b/content/browser/payments/payment_app_database.cc
@@ -136,9 +136,10 @@
   DCHECK_CURRENTLY_ON(BrowserThread::IO);
 
   service_worker_context_->GetUserDataForAllRegistrationsByKeyPrefix(
-      kPaymentAppPrefix, base::Bind(&PaymentAppDatabase::DidReadAllPaymentApps,
-                                    weak_ptr_factory_.GetWeakPtr(),
-                                    base::Passed(std::move(callback))));
+      kPaymentAppPrefix,
+      base::BindOnce(&PaymentAppDatabase::DidReadAllPaymentApps,
+                     weak_ptr_factory_.GetWeakPtr(),
+                     base::Passed(std::move(callback))));
 }
 
 void PaymentAppDatabase::DeletePaymentInstrument(
@@ -149,7 +150,7 @@
 
   service_worker_context_->FindReadyRegistrationForPattern(
       scope,
-      base::Bind(
+      base::BindOnce(
           &PaymentAppDatabase::DidFindRegistrationToDeletePaymentInstrument,
           weak_ptr_factory_.GetWeakPtr(), instrument_key,
           base::Passed(std::move(callback))));
@@ -163,7 +164,7 @@
 
   service_worker_context_->FindReadyRegistrationForPattern(
       scope,
-      base::Bind(
+      base::BindOnce(
           &PaymentAppDatabase::DidFindRegistrationToReadPaymentInstrument,
           weak_ptr_factory_.GetWeakPtr(), instrument_key,
           base::Passed(std::move(callback))));
@@ -175,9 +176,9 @@
   DCHECK_CURRENTLY_ON(BrowserThread::IO);
 
   service_worker_context_->FindReadyRegistrationForPattern(
-      scope, base::Bind(&PaymentAppDatabase::DidFindRegistrationToGetKeys,
-                        weak_ptr_factory_.GetWeakPtr(),
-                        base::Passed(std::move(callback))));
+      scope, base::BindOnce(&PaymentAppDatabase::DidFindRegistrationToGetKeys,
+                            weak_ptr_factory_.GetWeakPtr(),
+                            base::Passed(std::move(callback))));
 }
 
 void PaymentAppDatabase::HasPaymentInstrument(
@@ -187,8 +188,8 @@
   DCHECK_CURRENTLY_ON(BrowserThread::IO);
 
   service_worker_context_->FindReadyRegistrationForPattern(
-      scope,
-      base::Bind(&PaymentAppDatabase::DidFindRegistrationToHasPaymentInstrument,
+      scope, base::BindOnce(
+                 &PaymentAppDatabase::DidFindRegistrationToHasPaymentInstrument,
                  weak_ptr_factory_.GetWeakPtr(), instrument_key,
                  base::Passed(std::move(callback))));
 }
@@ -211,7 +212,7 @@
   } else {
     service_worker_context_->FindReadyRegistrationForPattern(
         scope,
-        base::Bind(
+        base::BindOnce(
             &PaymentAppDatabase::DidFindRegistrationToWritePaymentInstrument,
             weak_ptr_factory_.GetWeakPtr(), instrument_key,
             base::Passed(std::move(instrument)), std::string(),
@@ -234,7 +235,7 @@
 
   service_worker_context_->FindReadyRegistrationForPattern(
       scope,
-      base::Bind(
+      base::BindOnce(
           &PaymentAppDatabase::DidFindRegistrationToWritePaymentInstrument,
           weak_ptr_factory_.GetWeakPtr(), instrument_key,
           base::Passed(std::move(instrument)), icon,
@@ -263,8 +264,8 @@
   DCHECK_CURRENTLY_ON(BrowserThread::IO);
 
   service_worker_context_->FindReadyRegistrationForPattern(
-      scope,
-      base::Bind(&PaymentAppDatabase::DidFindRegistrationToWritePaymentAppInfo,
+      scope, base::BindOnce(
+                 &PaymentAppDatabase::DidFindRegistrationToWritePaymentAppInfo,
                  weak_ptr_factory_.GetWeakPtr(), user_hint,
                  base::Passed(std::move(callback)),
                  base::Passed(std::move(app_info))));
@@ -334,7 +335,7 @@
 
   service_worker_context_->FindReadyRegistrationForPattern(
       scope,
-      base::Bind(
+      base::BindOnce(
           &PaymentAppDatabase::DidFindRegistrationToClearPaymentInstruments,
           weak_ptr_factory_.GetWeakPtr(), scope,
           base::Passed(std::move(callback))));
@@ -346,7 +347,7 @@
 
   service_worker_context_->FindReadyRegistrationForPattern(
       scope,
-      base::Bind(
+      base::BindOnce(
           &PaymentAppDatabase::DidFindRegistrationToSetPaymentAppUserHint,
           weak_ptr_factory_.GetWeakPtr(), user_hint));
 }
@@ -361,9 +362,9 @@
 
   service_worker_context_->GetRegistrationUserDataByKeyPrefix(
       registration->id(), CreatePaymentAppKey(registration->pattern().spec()),
-      base::Bind(&PaymentAppDatabase::DidGetPaymentAppInfoToSetUserHint,
-                 weak_ptr_factory_.GetWeakPtr(), user_hint, registration->id(),
-                 registration->pattern()));
+      base::BindOnce(&PaymentAppDatabase::DidGetPaymentAppInfoToSetUserHint,
+                     weak_ptr_factory_.GetWeakPtr(), user_hint,
+                     registration->id(), registration->pattern()));
 }
 
 void PaymentAppDatabase::DidGetPaymentAppInfoToSetUserHint(
@@ -527,9 +528,10 @@
 
   service_worker_context_->GetUserDataForAllRegistrationsByKeyPrefix(
       kPaymentInstrumentPrefix,
-      base::Bind(&PaymentAppDatabase::DidReadAllPaymentInstruments,
-                 weak_ptr_factory_.GetWeakPtr(), base::Passed(std::move(apps)),
-                 base::Passed(std::move(callback))));
+      base::BindOnce(&PaymentAppDatabase::DidReadAllPaymentInstruments,
+                     weak_ptr_factory_.GetWeakPtr(),
+                     base::Passed(std::move(apps)),
+                     base::Passed(std::move(callback))));
 }
 
 void PaymentAppDatabase::DidReadAllPaymentInstruments(
@@ -582,9 +584,9 @@
 
   service_worker_context_->GetRegistrationUserData(
       registration->id(), {CreatePaymentInstrumentKey(instrument_key)},
-      base::Bind(&PaymentAppDatabase::DidFindPaymentInstrument,
-                 weak_ptr_factory_.GetWeakPtr(), registration->id(),
-                 instrument_key, base::Passed(std::move(callback))));
+      base::BindOnce(&PaymentAppDatabase::DidFindPaymentInstrument,
+                     weak_ptr_factory_.GetWeakPtr(), registration->id(),
+                     instrument_key, base::Passed(std::move(callback))));
 }
 
 void PaymentAppDatabase::DidFindPaymentInstrument(
@@ -631,9 +633,9 @@
 
   service_worker_context_->GetRegistrationUserData(
       registration->id(), {CreatePaymentInstrumentKey(instrument_key)},
-      base::Bind(&PaymentAppDatabase::DidReadPaymentInstrument,
-                 weak_ptr_factory_.GetWeakPtr(),
-                 base::Passed(std::move(callback))));
+      base::BindOnce(&PaymentAppDatabase::DidReadPaymentInstrument,
+                     weak_ptr_factory_.GetWeakPtr(),
+                     base::Passed(std::move(callback))));
 }
 
 void PaymentAppDatabase::DidReadPaymentInstrument(
@@ -670,9 +672,9 @@
 
   service_worker_context_->GetRegistrationUserDataByKeyPrefix(
       registration->id(), {kPaymentInstrumentKeyInfoPrefix},
-      base::Bind(&PaymentAppDatabase::DidGetKeysOfPaymentInstruments,
-                 weak_ptr_factory_.GetWeakPtr(),
-                 base::Passed(std::move(callback))));
+      base::BindOnce(&PaymentAppDatabase::DidGetKeysOfPaymentInstruments,
+                     weak_ptr_factory_.GetWeakPtr(),
+                     base::Passed(std::move(callback))));
 }
 
 void PaymentAppDatabase::DidGetKeysOfPaymentInstruments(
@@ -707,9 +709,9 @@
 
   service_worker_context_->GetRegistrationUserData(
       registration->id(), {CreatePaymentInstrumentKey(instrument_key)},
-      base::Bind(&PaymentAppDatabase::DidHasPaymentInstrument,
-                 weak_ptr_factory_.GetWeakPtr(),
-                 base::Passed(std::move(callback))));
+      base::BindOnce(&PaymentAppDatabase::DidHasPaymentInstrument,
+                     weak_ptr_factory_.GetWeakPtr(),
+                     base::Passed(std::move(callback))));
 }
 
 void PaymentAppDatabase::DidHasPaymentInstrument(
diff --git a/content/browser/payments/payment_app_installer.cc b/content/browser/payments/payment_app_installer.cc
index 4d3429f..d01fb93 100644
--- a/content/browser/payments/payment_app_installer.cc
+++ b/content/browser/payments/payment_app_installer.cc
@@ -67,7 +67,8 @@
     }
     service_worker_context->RegisterServiceWorker(
         sw_url, option,
-        base::Bind(&SelfDeleteInstaller::OnRegisterServiceWorkerResult, this));
+        base::BindOnce(&SelfDeleteInstaller::OnRegisterServiceWorkerResult,
+                       this));
   }
 
   void onServiceWorkerRegistration(
@@ -148,7 +149,7 @@
     payment_app_context->payment_app_database()
         ->SetPaymentAppInfoForRegisteredServiceWorker(
             registration_id, instrument_key, name, enabled_methods,
-            base::Bind(&SelfDeleteInstaller::OnSetPaymentAppInfo, this));
+            base::BindOnce(&SelfDeleteInstaller::OnSetPaymentAppInfo, this));
   }
 
   void OnSetPaymentAppInfo(payments::mojom::PaymentHandlerStatus status) {
diff --git a/content/browser/push_messaging/push_messaging_manager.cc b/content/browser/push_messaging/push_messaging_manager.cc
index 396fbfc..747297f 100644
--- a/content/browser/push_messaging/push_messaging_manager.cc
+++ b/content/browser/push_messaging/push_messaging_manager.cc
@@ -345,8 +345,8 @@
   service_worker_context_->GetRegistrationUserData(
       registration_id,
       {kPushRegistrationIdServiceWorkerKey, kPushSenderIdServiceWorkerKey},
-      base::Bind(&PushMessagingManager::DidCheckForExistingRegistration,
-                 weak_factory_io_to_io_.GetWeakPtr(), base::Passed(&data)));
+      base::BindOnce(&PushMessagingManager::DidCheckForExistingRegistration,
+                     weak_factory_io_to_io_.GetWeakPtr(), base::Passed(&data)));
 }
 
 void PushMessagingManager::DidCheckForExistingRegistration(
@@ -399,8 +399,9 @@
     int64_t registration_id = data.service_worker_registration_id;
     service_worker_context_->GetRegistrationUserData(
         registration_id, {kPushSenderIdServiceWorkerKey},
-        base::Bind(&PushMessagingManager::DidGetSenderIdFromStorage,
-                   weak_factory_io_to_io_.GetWeakPtr(), base::Passed(&data)));
+        base::BindOnce(&PushMessagingManager::DidGetSenderIdFromStorage,
+                       weak_factory_io_to_io_.GetWeakPtr(),
+                       base::Passed(&data)));
   }
 }
 
@@ -692,10 +693,10 @@
 
   service_worker_context_->GetRegistrationUserData(
       service_worker_registration_id, {kPushSenderIdServiceWorkerKey},
-      base::Bind(&PushMessagingManager::UnsubscribeHavingGottenSenderId,
-                 weak_factory_io_to_io_.GetWeakPtr(), base::Passed(&callback),
-                 service_worker_registration_id,
-                 service_worker_registration->pattern().GetOrigin()));
+      base::BindOnce(&PushMessagingManager::UnsubscribeHavingGottenSenderId,
+                     weak_factory_io_to_io_.GetWeakPtr(),
+                     base::Passed(&callback), service_worker_registration_id,
+                     service_worker_registration->pattern().GetOrigin()));
 }
 
 void PushMessagingManager::UnsubscribeHavingGottenSenderId(
@@ -802,9 +803,9 @@
   service_worker_context_->GetRegistrationUserData(
       service_worker_registration_id,
       {kPushRegistrationIdServiceWorkerKey, kPushSenderIdServiceWorkerKey},
-      base::Bind(&PushMessagingManager::DidGetSubscription,
-                 weak_factory_io_to_io_.GetWeakPtr(), base::Passed(&callback),
-                 service_worker_registration_id));
+      base::BindOnce(&PushMessagingManager::DidGetSubscription,
+                     weak_factory_io_to_io_.GetWeakPtr(),
+                     base::Passed(&callback), service_worker_registration_id));
 }
 
 void PushMessagingManager::DidGetSubscription(
diff --git a/content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc b/content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc
index 8504a813..49fe8927 100644
--- a/content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc
+++ b/content/browser/renderer_host/media/media_stream_ui_proxy_unittest.cc
@@ -295,7 +295,7 @@
     quit_closure_ = run_loop.QuitClosure();
     BrowserThread::PostTask(
         BrowserThread::IO, FROM_HERE,
-        base::Bind(
+        base::BindOnce(
             &MediaStreamUIProxyFeaturePolicyTest::GetResultForRequestOnIOThread,
             base::Unretained(this), base::Passed(&request)));
     run_loop.Run();
@@ -337,7 +337,7 @@
     proxy_ = MediaStreamUIProxy::CreateForTests(&delegate_);
     proxy_->RequestAccess(
         std::move(request),
-        base::Bind(
+        base::BindOnce(
             &MediaStreamUIProxyFeaturePolicyTest::FinishedGetResultOnIOThread,
             base::Unretained(this)));
   }
@@ -348,8 +348,8 @@
     proxy_.reset();
     BrowserThread::PostTask(
         BrowserThread::UI, FROM_HERE,
-        base::Bind(&MediaStreamUIProxyFeaturePolicyTest::FinishedGetResult,
-                   base::Unretained(this), devices, result));
+        base::BindOnce(&MediaStreamUIProxyFeaturePolicyTest::FinishedGetResult,
+                       base::Unretained(this), devices, result));
   }
 
   void FinishedGetResult(const MediaStreamDevices& devices,
diff --git a/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc b/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
index 7bffbb0..e354d976 100644
--- a/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
+++ b/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc
@@ -52,8 +52,8 @@
     // is signaled.
     BrowserThread::PostTask(
         BrowserThread::IO, FROM_HERE,
-        base::Bind(&VideoCaptureGpuJpegDecoder::DestroyDecoderOnIOThread,
-                   base::Unretained(this), &event));
+        base::BindOnce(&VideoCaptureGpuJpegDecoder::DestroyDecoderOnIOThread,
+                       base::Unretained(this), &event));
     event.Wait();
   }
 }
@@ -79,10 +79,10 @@
     return;
   }
 
-  BrowserThread::PostTask(
-      BrowserThread::IO, FROM_HERE,
-      base::Bind(&RequestGPUInfoOnIOThread, base::ThreadTaskRunnerHandle::Get(),
-                 weak_ptr_factory_.GetWeakPtr()));
+  BrowserThread::PostTask(BrowserThread::IO, FROM_HERE,
+                          base::BindOnce(&RequestGPUInfoOnIOThread,
+                                         base::ThreadTaskRunnerHandle::Get(),
+                                         weak_ptr_factory_.GetWeakPtr()));
 }
 
 VideoCaptureGpuJpegDecoder::STATUS VideoCaptureGpuJpegDecoder::GetStatus()
@@ -191,9 +191,9 @@
 
   // base::Unretained is safe because |decoder_| is deleted on the IO thread.
   BrowserThread::PostTask(BrowserThread::IO, FROM_HERE,
-                          base::Bind(&media::JpegDecodeAccelerator::Decode,
-                                     base::Unretained(decoder_.get()),
-                                     in_buffer, std::move(out_frame)));
+                          base::BindOnce(&media::JpegDecodeAccelerator::Decode,
+                                         base::Unretained(decoder_.get()),
+                                         in_buffer, std::move(out_frame)));
 }
 
 void VideoCaptureGpuJpegDecoder::VideoFrameReady(int32_t bitstream_buffer_id) {
@@ -274,8 +274,8 @@
 
   task_runner->PostTask(
       FROM_HERE,
-      base::Bind(&VideoCaptureGpuJpegDecoder::FinishInitialization, weak_this,
-                 base::Passed(remote_decoder.PassInterface())));
+      base::BindOnce(&VideoCaptureGpuJpegDecoder::FinishInitialization,
+                     weak_this, base::Passed(remote_decoder.PassInterface())));
 }
 
 void VideoCaptureGpuJpegDecoder::FinishInitialization(
@@ -292,11 +292,11 @@
     // base::Unretained is safe because |decoder_| is deleted on the IO thread.
     BrowserThread::PostTask(
         BrowserThread::IO, FROM_HERE,
-        base::Bind(&media::JpegDecodeAccelerator::InitializeAsync,
-                   base::Unretained(decoder_.get()), this,
-                   media::BindToCurrentLoop(base::Bind(
-                       &VideoCaptureGpuJpegDecoder::OnInitializationDone,
-                       weak_ptr_factory_.GetWeakPtr()))));
+        base::BindOnce(&media::JpegDecodeAccelerator::InitializeAsync,
+                       base::Unretained(decoder_.get()), this,
+                       media::BindToCurrentLoop(base::Bind(
+                           &VideoCaptureGpuJpegDecoder::OnInitializationDone,
+                           weak_ptr_factory_.GetWeakPtr()))));
   } else {
     OnInitializationDone(false);
   }
diff --git a/content/browser/service_worker/service_worker_browsertest.cc b/content/browser/service_worker/service_worker_browsertest.cc
index aff224cb..236349e 100644
--- a/content/browser/service_worker/service_worker_browsertest.cc
+++ b/content/browser/service_worker/service_worker_browsertest.cc
@@ -1435,7 +1435,7 @@
       blink::mojom::ServiceWorkerUpdateViaCache::kImports);
   public_context()->RegisterServiceWorker(
       embedded_test_server()->GetURL(kWorkerUrl), options,
-      base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+      base::BindOnce(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
   observer->Wait();
 
   const base::string16 title1 = base::ASCIIToUTF16("save-data=on");
@@ -1449,7 +1449,7 @@
   base::RunLoop run_loop;
   public_context()->UnregisterServiceWorker(
       embedded_test_server()->GetURL(kPageUrl),
-      base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+      base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
   run_loop.Run();
 }
 
@@ -1479,7 +1479,7 @@
       blink::mojom::ServiceWorkerUpdateViaCache::kImports);
   public_context()->RegisterServiceWorker(
       embedded_test_server()->GetURL(kWorkerUrl), options,
-      base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+      base::BindOnce(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
   observer->Wait();
 
   const base::string16 title = base::ASCIIToUTF16("PASS");
@@ -1498,7 +1498,7 @@
   base::RunLoop run_loop;
   public_context()->UnregisterServiceWorker(
       embedded_test_server()->GetURL(kPageUrl),
-      base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+      base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
   run_loop.Run();
 }
 
@@ -1524,7 +1524,7 @@
       blink::mojom::ServiceWorkerUpdateViaCache::kImports);
   public_context()->RegisterServiceWorker(
       embedded_test_server()->GetURL(kWorkerUrl), options,
-      base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+      base::BindOnce(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
   observer->Wait();
 
   NavigateToURLBlockUntilNavigationsComplete(
@@ -1536,7 +1536,7 @@
   base::RunLoop run_loop;
   public_context()->UnregisterServiceWorker(
       embedded_test_server()->GetURL(kPageUrl),
-      base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+      base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
   run_loop.Run();
 }
 
@@ -1552,7 +1552,7 @@
       blink::mojom::ServiceWorkerUpdateViaCache::kImports);
   public_context()->RegisterServiceWorker(
       embedded_test_server()->GetURL(kWorkerUrl), options,
-      base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+      base::BindOnce(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
   observer->Wait();
 
   const base::string16 title1 = base::ASCIIToUTF16("reload=false");
@@ -1570,7 +1570,7 @@
   base::RunLoop run_loop;
   public_context()->UnregisterServiceWorker(
       embedded_test_server()->GetURL(kPageUrl),
-      base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+      base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
   run_loop.Run();
 }
 
@@ -1622,7 +1622,8 @@
         scope, blink::mojom::ServiceWorkerUpdateViaCache::kImports);
     public_context()->RegisterServiceWorker(
         worker_url, options,
-        base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+        base::BindOnce(&ExpectResultAndRun, true,
+                       base::Bind(&base::DoNothing)));
     observer->Wait();
   }
 
@@ -2331,7 +2332,7 @@
       blink::mojom::ServiceWorkerUpdateViaCache::kImports);
   public_context()->RegisterServiceWorker(
       https_server.GetURL(kWorkerUrl), options,
-      base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+      base::BindOnce(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
   observer->Wait();
 
   const base::string16 title = base::ASCIIToUTF16("Title");
@@ -2352,7 +2353,7 @@
   base::RunLoop run_loop;
   public_context()->UnregisterServiceWorker(
       https_server.GetURL(kPageUrl),
-      base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+      base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
   run_loop.Run();
 }
 
@@ -2369,7 +2370,7 @@
       blink::mojom::ServiceWorkerUpdateViaCache::kImports);
   public_context()->RegisterServiceWorker(
       embedded_test_server()->GetURL(kWorkerUrl), options,
-      base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+      base::BindOnce(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
   observer->Wait();
 
   const base::string16 title = base::ASCIIToUTF16("Title");
@@ -2388,7 +2389,7 @@
   base::RunLoop run_loop;
   public_context()->UnregisterServiceWorker(
       embedded_test_server()->GetURL(kPageUrl),
-      base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+      base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
   run_loop.Run();
 }
 
@@ -2469,8 +2470,8 @@
                             const base::Closure& continuation) {
     wrapper()->FindReadyRegistrationForDocument(
         document_url,
-        base::Bind(&ServiceWorkerBlackBoxBrowserTest::FindRegistrationOnIO2,
-                   base::Unretained(this), status, continuation));
+        base::BindOnce(&ServiceWorkerBlackBoxBrowserTest::FindRegistrationOnIO2,
+                       base::Unretained(this), status, continuation));
   }
 
   void FindRegistrationOnIO2(
@@ -2509,7 +2510,7 @@
     base::RunLoop run_loop;
     public_context()->UnregisterServiceWorker(
         embedded_test_server()->GetURL("/"),
-        base::Bind(&ExpectResultAndRun, false, run_loop.QuitClosure()));
+        base::BindOnce(&ExpectResultAndRun, false, run_loop.QuitClosure()));
     run_loop.Run();
   }
 
@@ -2521,7 +2522,7 @@
         blink::mojom::ServiceWorkerUpdateViaCache::kImports);
     public_context()->RegisterServiceWorker(
         embedded_test_server()->GetURL("/does/not/exist"), options,
-        base::Bind(&ExpectResultAndRun, false, run_loop.QuitClosure()));
+        base::BindOnce(&ExpectResultAndRun, false, run_loop.QuitClosure()));
     run_loop.Run();
   }
   EXPECT_EQ(0, CountRenderProcessHosts());
@@ -2534,7 +2535,7 @@
         blink::mojom::ServiceWorkerUpdateViaCache::kImports);
     public_context()->RegisterServiceWorker(
         embedded_test_server()->GetURL(kWorkerUrl), options,
-        base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+        base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
     run_loop.Run();
   }
   EXPECT_EQ(1, CountRenderProcessHosts());
@@ -2548,7 +2549,7 @@
         blink::mojom::ServiceWorkerUpdateViaCache::kImports);
     public_context()->RegisterServiceWorker(
         embedded_test_server()->GetURL(kWorkerUrl), options,
-        base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+        base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
     run_loop.Run();
   }
 
@@ -2561,7 +2562,7 @@
     base::RunLoop run_loop;
     public_context()->UnregisterServiceWorker(
         embedded_test_server()->GetURL(kScope),
-        base::Bind(&ExpectResultAndRun, true, run_loop.QuitClosure()));
+        base::BindOnce(&ExpectResultAndRun, true, run_loop.QuitClosure()));
     run_loop.Run();
   }
   EXPECT_GE(1, CountRenderProcessHosts()) << "Unregistering doesn't stop the "
@@ -2824,8 +2825,8 @@
     blob_data_handle_ = std::move(blob_data_handle);
     blob_reader_ = blob_data_handle_->CreateReader();
     const storage::BlobReader::Status status = blob_reader_->CalculateSize(
-        base::Bind(&self::OnBlobReaderCalculateSizeCallback, this, result,
-                   continuation));
+        base::BindOnce(&self::OnBlobReaderCalculateSizeCallback, this, result,
+                       continuation));
 
     ASSERT_NE(storage::BlobReader::Status::NET_ERROR, status);
     if (status == storage::BlobReader::Status::DONE)
@@ -2891,7 +2892,8 @@
         blink::mojom::ServiceWorkerUpdateViaCache::kImports);
     public_context()->RegisterServiceWorker(
         embedded_test_server()->GetURL(kWorkerUrl), options,
-        base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+        base::BindOnce(&ExpectResultAndRun, true,
+                       base::Bind(&base::DoNothing)));
     observer->Wait();
   }
 
@@ -3013,7 +3015,8 @@
         blink::mojom::ServiceWorkerUpdateViaCache::kImports);
     public_context()->RegisterServiceWorker(
         cross_origin_server_.GetURL(script), options,
-        base::Bind(&ExpectResultAndRun, true, base::Bind(&base::DoNothing)));
+        base::BindOnce(&ExpectResultAndRun, true,
+                       base::Bind(&base::DoNothing)));
     observer->Wait();
   }
 
diff --git a/content/browser/service_worker/service_worker_cache_writer.cc b/content/browser/service_worker/service_worker_cache_writer.cc
index a45dfed..dceaa611 100644
--- a/content/browser/service_worker/service_worker_cache_writer.cc
+++ b/content/browser/service_worker/service_worker_cache_writer.cc
@@ -435,8 +435,8 @@
   scoped_refptr<AsyncOnlyCompletionCallbackAdaptor> adaptor(
       new AsyncOnlyCompletionCallbackAdaptor(run_callback));
   reader->ReadInfo(
-      buf, base::Bind(&AsyncOnlyCompletionCallbackAdaptor::WrappedCallback,
-                      adaptor));
+      buf, base::BindOnce(&AsyncOnlyCompletionCallbackAdaptor::WrappedCallback,
+                          adaptor));
   adaptor->set_async(true);
   return adaptor->result();
 }
@@ -451,8 +451,8 @@
       new AsyncOnlyCompletionCallbackAdaptor(run_callback));
   reader->ReadData(
       buf, buf_len,
-      base::Bind(&AsyncOnlyCompletionCallbackAdaptor::WrappedCallback,
-                 adaptor));
+      base::BindOnce(&AsyncOnlyCompletionCallbackAdaptor::WrappedCallback,
+                     adaptor));
   adaptor->set_async(true);
   return adaptor->result();
 }
@@ -466,8 +466,8 @@
   scoped_refptr<AsyncOnlyCompletionCallbackAdaptor> adaptor(
       new AsyncOnlyCompletionCallbackAdaptor(run_callback));
   writer->WriteInfo(
-      buf, base::Bind(&AsyncOnlyCompletionCallbackAdaptor::WrappedCallback,
-                      adaptor));
+      buf, base::BindOnce(&AsyncOnlyCompletionCallbackAdaptor::WrappedCallback,
+                          adaptor));
   adaptor->set_async(true);
   return adaptor->result();
 }
@@ -482,8 +482,8 @@
       new AsyncOnlyCompletionCallbackAdaptor(run_callback));
   writer->WriteData(
       buf, buf_len,
-      base::Bind(&AsyncOnlyCompletionCallbackAdaptor::WrappedCallback,
-                 adaptor));
+      base::BindOnce(&AsyncOnlyCompletionCallbackAdaptor::WrappedCallback,
+                     adaptor));
   adaptor->set_async(true);
   return adaptor->result();
 }
diff --git a/content/browser/service_worker/service_worker_context_core.cc b/content/browser/service_worker/service_worker_context_core.cc
index ba2c32b..bee0571 100644
--- a/content/browser/service_worker/service_worker_context_core.cc
+++ b/content/browser/service_worker/service_worker_context_core.cc
@@ -737,8 +737,8 @@
     return;
   was_service_worker_registered_ = false;
   storage()->GetAllRegistrationsInfos(
-      base::Bind(&ClearAllServiceWorkersHelper::DidGetAllRegistrations, helper,
-                 AsWeakPtr()));
+      base::BindOnce(&ClearAllServiceWorkersHelper::DidGetAllRegistrations,
+                     helper, AsWeakPtr()));
 }
 
 void ServiceWorkerContextCore::CheckHasServiceWorker(
@@ -746,10 +746,10 @@
     const GURL& other_url,
     ServiceWorkerContext::CheckHasServiceWorkerCallback callback) {
   storage()->FindRegistrationForDocument(
-      url,
-      base::Bind(&ServiceWorkerContextCore::
-                     DidFindRegistrationForCheckHasServiceWorker,
-                 AsWeakPtr(), other_url, base::Passed(std::move(callback))));
+      url, base::BindOnce(&ServiceWorkerContextCore::
+                              DidFindRegistrationForCheckHasServiceWorker,
+                          AsWeakPtr(), other_url,
+                          base::Passed(std::move(callback))));
 }
 
 void ServiceWorkerContextCore::UpdateVersionFailureCount(
diff --git a/content/browser/service_worker/service_worker_context_unittest.cc b/content/browser/service_worker/service_worker_context_unittest.cc
index c20eab6..10f0068 100644
--- a/content/browser/service_worker/service_worker_context_unittest.cc
+++ b/content/browser/service_worker/service_worker_context_unittest.cc
@@ -238,12 +238,9 @@
   EXPECT_EQ(registration_id, notifications_[0].registration_id);
 
   context()->storage()->FindRegistrationForId(
-      registration_id,
-      pattern.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_OK,
-                 false /* expect_waiting */,
-                 true /* expect_active */));
+      registration_id, pattern.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_OK,
+                     false /* expect_waiting */, true /* expect_active */));
   base::RunLoop().RunUntilIdle();
 }
 
@@ -290,12 +287,9 @@
   EXPECT_EQ(registration_id, notifications_[0].registration_id);
 
   context()->storage()->FindRegistrationForId(
-      registration_id,
-      pattern.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_ERROR_NOT_FOUND,
-                 false /* expect_waiting */,
-                 false /* expect_active */));
+      registration_id, pattern.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_ERROR_NOT_FOUND,
+                     false /* expect_waiting */, false /* expect_active */));
   base::RunLoop().RunUntilIdle();
 }
 
@@ -342,8 +336,8 @@
 
   context()->storage()->FindRegistrationForId(
       registration_id, pattern.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers, SERVICE_WORKER_OK,
-                 false /* expect_waiting */, true /* expect_active */));
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_OK,
+                     false /* expect_waiting */, true /* expect_active */));
   base::RunLoop().RunUntilIdle();
 }
 
@@ -373,12 +367,9 @@
   ASSERT_TRUE(called);
 
   context()->storage()->FindRegistrationForId(
-      registration_id,
-      pattern.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_ERROR_NOT_FOUND,
-                 false /* expect_waiting */,
-                 false /* expect_active */));
+      registration_id, pattern.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_ERROR_NOT_FOUND,
+                     false /* expect_waiting */, false /* expect_active */));
   base::RunLoop().RunUntilIdle();
 
   ASSERT_EQ(2u, notifications_.size());
@@ -467,34 +458,22 @@
   ASSERT_TRUE(called);
 
   context()->storage()->FindRegistrationForId(
-      registration_id1,
-      origin1_p1.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_ERROR_NOT_FOUND,
-                 false /* expect_waiting */,
-                 false /* expect_active */));
+      registration_id1, origin1_p1.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_ERROR_NOT_FOUND,
+                     false /* expect_waiting */, false /* expect_active */));
   context()->storage()->FindRegistrationForId(
-      registration_id2,
-      origin1_p2.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_ERROR_NOT_FOUND,
-                 false /* expect_waiting */,
-                 false /* expect_active */));
+      registration_id2, origin1_p2.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_ERROR_NOT_FOUND,
+                     false /* expect_waiting */, false /* expect_active */));
   context()->storage()->FindRegistrationForId(
-      registration_id3,
-      origin2_p1.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_OK,
-                 false /* expect_waiting */,
-                 true /* expect_active */));
+      registration_id3, origin2_p1.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_OK,
+                     false /* expect_waiting */, true /* expect_active */));
 
   context()->storage()->FindRegistrationForId(
-      registration_id4,
-      origin3_p1.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_OK,
-                 false /* expect_waiting */,
-                 true /* expect_active */));
+      registration_id4, origin3_p1.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_OK,
+                     false /* expect_waiting */, true /* expect_active */));
 
   base::RunLoop().RunUntilIdle();
 
@@ -745,12 +724,9 @@
   EXPECT_TRUE(called);
 
   context()->storage()->FindRegistrationForId(
-      registration_id,
-      pattern.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_OK,
-                 false /* expect_waiting */,
-                 true /* expect_active */));
+      registration_id, pattern.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_OK,
+                     false /* expect_waiting */, true /* expect_active */));
   content::RunAllTasksUntilIdle();
 
   // Next handle id should be 1 (the next call should return 2) because
@@ -763,19 +739,16 @@
   // operation should be aborted.
   context()->storage()->FindRegistrationForId(
       registration_id, pattern.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers, SERVICE_WORKER_ERROR_ABORT,
-                 false /* expect_waiting */, true /* expect_active */));
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_ERROR_ABORT,
+                     false /* expect_waiting */, true /* expect_active */));
   content::RunAllTasksUntilIdle();
 
   // The context started over and the storage was re-initialized, so the
   // registration should not be found.
   context()->storage()->FindRegistrationForId(
-      registration_id,
-      pattern.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_ERROR_NOT_FOUND,
-                 false /* expect_waiting */,
-                 true /* expect_active */));
+      registration_id, pattern.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_ERROR_NOT_FOUND,
+                     false /* expect_waiting */, true /* expect_active */));
   content::RunAllTasksUntilIdle();
 
   called = false;
@@ -787,12 +760,9 @@
   EXPECT_TRUE(called);
 
   context()->storage()->FindRegistrationForId(
-      registration_id,
-      pattern.GetOrigin(),
-      base::Bind(&ExpectRegisteredWorkers,
-                 SERVICE_WORKER_OK,
-                 false /* expect_waiting */,
-                 true /* expect_active */));
+      registration_id, pattern.GetOrigin(),
+      base::BindOnce(&ExpectRegisteredWorkers, SERVICE_WORKER_OK,
+                     false /* expect_waiting */, true /* expect_active */));
   content::RunAllTasksUntilIdle();
 
   // The new context should take over next handle id. ID 2 should have been
diff --git a/content/browser/service_worker/service_worker_context_watcher.cc b/content/browser/service_worker/service_worker_context_watcher.cc
index 21a2d71b..08006a83 100644
--- a/content/browser/service_worker/service_worker_context_watcher.cc
+++ b/content/browser/service_worker/service_worker_context_watcher.cc
@@ -60,7 +60,7 @@
   DCHECK_CURRENTLY_ON(BrowserThread::IO);
   if (is_stopped_)
     return;
-  context_->GetAllRegistrations(base::Bind(
+  context_->GetAllRegistrations(base::BindOnce(
       &ServiceWorkerContextWatcher::OnStoredRegistrationsOnIOThread, this));
 }
 
diff --git a/content/browser/service_worker/service_worker_controllee_request_handler.cc b/content/browser/service_worker/service_worker_controllee_request_handler.cc
index 5efbe67c..af724f0 100644
--- a/content/browser/service_worker/service_worker_controllee_request_handler.cc
+++ b/content/browser/service_worker/service_worker_controllee_request_handler.cc
@@ -296,8 +296,8 @@
   provider_host_->SetDocumentUrl(stripped_url_);
   provider_host_->SetTopmostFrameUrl(site_for_cookies);
   context_->storage()->FindRegistrationForDocument(
-      stripped_url_, base::Bind(&self::DidLookupRegistrationForMainResource,
-                                weak_factory_.GetWeakPtr()));
+      stripped_url_, base::BindOnce(&self::DidLookupRegistrationForMainResource,
+                                    weak_factory_.GetWeakPtr()));
 }
 
 void ServiceWorkerControlleeRequestHandler::
@@ -460,8 +460,9 @@
     // Update failed. Look up the registration again since the original
     // registration was possibly unregistered in the meantime.
     context_->storage()->FindRegistrationForDocument(
-        stripped_url_, base::Bind(&self::DidLookupRegistrationForMainResource,
-                                  weak_factory_.GetWeakPtr()));
+        stripped_url_,
+        base::BindOnce(&self::DidLookupRegistrationForMainResource,
+                       weak_factory_.GetWeakPtr()));
     return;
   }
   DCHECK_EQ(original_registration->id(), registration_id);
@@ -491,8 +492,9 @@
     // continue with the incumbent version.
     // In case unregister job may have run, look up the registration again.
     context_->storage()->FindRegistrationForDocument(
-        stripped_url_, base::Bind(&self::DidLookupRegistrationForMainResource,
-                                  weak_factory_.GetWeakPtr()));
+        stripped_url_,
+        base::BindOnce(&self::DidLookupRegistrationForMainResource,
+                       weak_factory_.GetWeakPtr()));
     return;
   }
   version->RegisterStatusChangeCallback(
diff --git a/content/browser/service_worker/service_worker_controllee_request_handler_unittest.cc b/content/browser/service_worker/service_worker_controllee_request_handler_unittest.cc
index b5b8608..9f39cca 100644
--- a/content/browser/service_worker/service_worker_controllee_request_handler_unittest.cc
+++ b/content/browser/service_worker/service_worker_controllee_request_handler_unittest.cc
@@ -179,9 +179,8 @@
   version_->SetStatus(ServiceWorkerVersion::ACTIVATED);
   registration_->SetActiveVersion(version_);
   context()->storage()->StoreRegistration(
-      registration_.get(),
-      version_.get(),
-      base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
+      registration_.get(), version_.get(),
+      base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback));
   base::RunLoop().RunUntilIdle();
 
   // Conduct a main resource load.
@@ -209,9 +208,8 @@
   version_->SetStatus(ServiceWorkerVersion::INSTALLED);
   registration_->SetWaitingVersion(version_);
   context()->storage()->StoreRegistration(
-      registration_.get(),
-      version_.get(),
-      base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
+      registration_.get(), version_.get(),
+      base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback));
   base::RunLoop().RunUntilIdle();
 
   // Conduct a main resource load.
@@ -271,9 +269,8 @@
   version_->SetStatus(ServiceWorkerVersion::ACTIVATED);
   registration_->SetActiveVersion(version_);
   context()->storage()->StoreRegistration(
-      registration_.get(),
-      version_.get(),
-      base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
+      registration_.get(), version_.get(),
+      base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback));
   base::RunLoop().RunUntilIdle();
   version_ = nullptr;
   registration_ = nullptr;
@@ -307,7 +304,7 @@
   registration_->SetActiveVersion(version_);
   context()->storage()->StoreRegistration(
       registration_.get(), version_.get(),
-      base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
+      base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback));
   base::RunLoop().RunUntilIdle();
 
   // Conduct a main resource load to set the controller.
@@ -344,7 +341,7 @@
   registration_->SetActiveVersion(version_);
   context()->storage()->StoreRegistration(
       registration_.get(), version_.get(),
-      base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
+      base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback));
   base::RunLoop().RunUntilIdle();
 
   ServiceWorkerRequestTestResources main_test_resources(
diff --git a/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc b/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc
index c87fc25..3a80eb5 100644
--- a/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc
+++ b/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc
@@ -217,7 +217,7 @@
     ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_MAX_VALUE;
     context()->storage()->StoreRegistration(
         registration_.get(), version_.get(),
-        base::Bind(&SaveStatusCallback, &called, &status));
+        base::BindOnce(&SaveStatusCallback, &called, &status));
     base::RunLoop().RunUntilIdle();
     EXPECT_TRUE(called);
     EXPECT_EQ(SERVICE_WORKER_OK, status);
@@ -333,7 +333,7 @@
   bool called = false;
   ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_ABORT;
   version_->StartWorker(ServiceWorkerMetrics::EventType::UNKNOWN,
-                        base::Bind(&SaveStatusCallback, &called, &status));
+                        base::BindOnce(&SaveStatusCallback, &called, &status));
   base::RunLoop().RunUntilIdle();
 
   EXPECT_TRUE(called);
@@ -388,13 +388,13 @@
   bool called = false;
   ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_MAX_VALUE;
   version_->StartWorker(ServiceWorkerMetrics::EventType::UNKNOWN,
-                        base::Bind(&SaveStatusCallback, &called, &status));
+                        base::BindOnce(&SaveStatusCallback, &called, &status));
   base::RunLoop().RunUntilIdle();
   EXPECT_TRUE(called);
   EXPECT_EQ(SERVICE_WORKER_OK, status);
   version_->StartRequestWithCustomTimeout(
       ServiceWorkerMetrics::EventType::ACTIVATE,
-      base::Bind(&ServiceWorkerUtils::NoOpStatusCallback),
+      base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback),
       base::TimeDelta::FromSeconds(10), ServiceWorkerVersion::KILL_ON_TIMEOUT);
 
   // Advance clock by a couple seconds.
diff --git a/content/browser/service_worker/service_worker_installed_scripts_sender.cc b/content/browser/service_worker/service_worker_installed_scripts_sender.cc
index 5b182b4..39e66c4 100644
--- a/content/browser/service_worker/service_worker_installed_scripts_sender.cc
+++ b/content/browser/service_worker/service_worker_installed_scripts_sender.cc
@@ -97,8 +97,9 @@
 
   void Start() {
     auto info_buf = base::MakeRefCounted<HttpResponseInfoIOBuffer>();
-    reader_->ReadInfo(info_buf.get(), base::Bind(&Sender::OnReadInfoComplete,
-                                                 AsWeakPtr(), info_buf));
+    reader_->ReadInfo(
+        info_buf.get(),
+        base::BindOnce(&Sender::OnReadInfoComplete, AsWeakPtr(), info_buf));
   }
 
  private:
@@ -203,7 +204,7 @@
         base::MakeRefCounted<network::NetToMojoIOBuffer>(
             body_pending_write_.get());
     reader_->ReadData(buffer.get(), num_bytes,
-                      base::Bind(&Sender::OnResponseDataRead, AsWeakPtr()));
+                      base::BindOnce(&Sender::OnResponseDataRead, AsWeakPtr()));
   }
 
   void OnResponseDataRead(int read_bytes) {
diff --git a/content/browser/service_worker/service_worker_internals_ui.cc b/content/browser/service_worker/service_worker_internals_ui.cc
index f20cdda..22d1e1c 100644
--- a/content/browser/service_worker/service_worker_internals_ui.cc
+++ b/content/browser/service_worker/service_worker_internals_ui.cc
@@ -221,7 +221,7 @@
     const GetRegistrationsCallback& callback) {
   DCHECK_CURRENTLY_ON(BrowserThread::IO);
   context->GetAllRegistrations(
-      base::Bind(DidGetStoredRegistrationsOnIOThread, context, callback));
+      base::BindOnce(DidGetStoredRegistrationsOnIOThread, context, callback));
 }
 
 void DidGetRegistrations(
@@ -499,7 +499,7 @@
   }
 
   base::OnceCallback<void(ServiceWorkerStatusCode)> callback =
-      base::Bind(OperationCompleteCallback, AsWeakPtr(), callback_id);
+      base::BindOnce(OperationCompleteCallback, AsWeakPtr(), callback_id);
   StopWorkerWithId(context, version_id, std::move(callback));
 }
 
diff --git a/content/browser/service_worker/service_worker_job_unittest.cc b/content/browser/service_worker/service_worker_job_unittest.cc
index 05f4a87..82e7492 100644
--- a/content/browser/service_worker/service_worker_job_unittest.cc
+++ b/content/browser/service_worker/service_worker_job_unittest.cc
@@ -925,13 +925,12 @@
       new HttpResponseInfoIOBuffer(info.release());
 
   int rv = -1234;
-  writer->WriteInfo(info_buffer.get(), base::Bind(&OnIOComplete, &rv));
+  writer->WriteInfo(info_buffer.get(), base::BindOnce(&OnIOComplete, &rv));
   RunNestedUntilIdle();
   EXPECT_LT(0, rv);
 
   rv = -1234;
-  writer->WriteData(body, length,
-                    base::Bind(&OnIOComplete, &rv));
+  writer->WriteData(body, length, base::BindOnce(&OnIOComplete, &rv));
   RunNestedUntilIdle();
   EXPECT_EQ(length, rv);
 }
diff --git a/content/browser/service_worker/service_worker_read_from_cache_job.cc b/content/browser/service_worker/service_worker_read_from_cache_job.cc
index 466c55c..e90ad63 100644
--- a/content/browser/service_worker/service_worker_read_from_cache_job.cc
+++ b/content/browser/service_worker/service_worker_read_from_cache_job.cc
@@ -117,9 +117,10 @@
   DCHECK(!reader_->IsReadPending());
   TRACE_EVENT_NESTABLE_ASYNC_BEGIN1("ServiceWorker", "ReadRawData", this,
                                     "buf_size", buf_size);
-  reader_->ReadData(buf, buf_size,
-                    base::Bind(&ServiceWorkerReadFromCacheJob::OnReadComplete,
-                               weak_factory_.GetWeakPtr()));
+  reader_->ReadData(
+      buf, buf_size,
+      base::BindOnce(&ServiceWorkerReadFromCacheJob::OnReadComplete,
+                     weak_factory_.GetWeakPtr()));
   return net::ERR_IO_PENDING;
 }
 
@@ -140,8 +141,8 @@
   http_info_io_buffer_ = new HttpResponseInfoIOBuffer;
   reader_->ReadInfo(
       http_info_io_buffer_.get(),
-      base::Bind(&ServiceWorkerReadFromCacheJob::OnReadInfoComplete,
-                 weak_factory_.GetWeakPtr()));
+      base::BindOnce(&ServiceWorkerReadFromCacheJob::OnReadInfoComplete,
+                     weak_factory_.GetWeakPtr()));
 }
 
 const net::HttpResponseInfo* ServiceWorkerReadFromCacheJob::http_info() const {
diff --git a/content/browser/service_worker/service_worker_read_from_cache_job_unittest.cc b/content/browser/service_worker/service_worker_read_from_cache_job_unittest.cc
index d16d273..493088c 100644
--- a/content/browser/service_worker/service_worker_read_from_cache_job_unittest.cc
+++ b/content/browser/service_worker/service_worker_read_from_cache_job_unittest.cc
@@ -147,7 +147,7 @@
     ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_FAILED;
     context()->storage()->StoreRegistration(
         registration_.get(), version_.get(),
-        base::Bind(&DidStoreRegistration, &status, run_loop.QuitClosure()));
+        base::BindOnce(&DidStoreRegistration, &status, run_loop.QuitClosure()));
     run_loop.Run();
     return status;
   }
@@ -157,7 +157,7 @@
     ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_FAILED;
     context()->storage()->FindRegistrationForId(
         registration_->id(), registration_->pattern().GetOrigin(),
-        base::Bind(&DidFindRegistration, &status, run_loop.QuitClosure()));
+        base::BindOnce(&DidFindRegistration, &status, run_loop.QuitClosure()));
     run_loop.Run();
     return status;
   }
diff --git a/content/browser/service_worker/service_worker_register_job.cc b/content/browser/service_worker/service_worker_register_job.cc
index 91f7208..95e2dd8 100644
--- a/content/browser/service_worker/service_worker_register_job.cc
+++ b/content/browser/service_worker/service_worker_register_job.cc
@@ -227,18 +227,16 @@
   if (existing_registration->GetNewestVersion()->script_url() == script_url_ &&
       existing_registration->update_via_cache() == update_via_cache_) {
     // "Set registration.[[Uninstalling]] to false."
-    existing_registration->AbortPendingClear(base::Bind(
+    existing_registration->AbortPendingClear(base::BindOnce(
         &ServiceWorkerRegisterJob::ContinueWithRegistrationForSameScriptUrl,
-        weak_factory_.GetWeakPtr(),
-        existing_registration));
+        weak_factory_.GetWeakPtr(), existing_registration));
     return;
   }
 
   if (existing_registration->is_uninstalling()) {
-    existing_registration->AbortPendingClear(base::Bind(
+    existing_registration->AbortPendingClear(base::BindOnce(
         &ServiceWorkerRegisterJob::ContinueWithUninstallingRegistration,
-        weak_factory_.GetWeakPtr(),
-        existing_registration));
+        weak_factory_.GetWeakPtr(), existing_registration));
     return;
   }
 
diff --git a/content/browser/service_worker/service_worker_registration_unittest.cc b/content/browser/service_worker/service_worker_registration_unittest.cc
index 80638b3..a62f452 100644
--- a/content/browser/service_worker/service_worker_registration_unittest.cc
+++ b/content/browser/service_worker/service_worker_registration_unittest.cc
@@ -40,11 +40,11 @@
 
 int CreateInflightRequest(ServiceWorkerVersion* version) {
   version->StartWorker(ServiceWorkerMetrics::EventType::PUSH,
-                       base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
+                       base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback));
   base::RunLoop().RunUntilIdle();
   return version->StartRequest(
       ServiceWorkerMetrics::EventType::PUSH,
-      base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
+      base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback));
 }
 
 static void SaveStatusCallback(bool* called,
@@ -395,8 +395,9 @@
     version_2->set_fetch_handler_existence(
         ServiceWorkerVersion::FetchHandlerExistence::EXISTS);
     registration_->SetWaitingVersion(version_2);
-    version_2->StartWorker(ServiceWorkerMetrics::EventType::INSTALL,
-                           base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
+    version_2->StartWorker(
+        ServiceWorkerMetrics::EventType::INSTALL,
+        base::BindOnce(&ServiceWorkerUtils::NoOpStatusCallback));
     version_2->SetStatus(ServiceWorkerVersion::INSTALLED);
 
     // Set it to activate when ready. The original version should still be
diff --git a/content/browser/service_worker/service_worker_script_url_loader.cc b/content/browser/service_worker/service_worker_script_url_loader.cc
index bcba735f..3ab29b7 100644
--- a/content/browser/service_worker/service_worker_script_url_loader.cc
+++ b/content/browser/service_worker/service_worker_script_url_loader.cc
@@ -314,8 +314,8 @@
     scoped_refptr<HttpResponseInfoIOBuffer> info_buffer) {
   net::Error error = cache_writer_->MaybeWriteHeaders(
       info_buffer.get(),
-      base::Bind(&ServiceWorkerScriptURLLoader::OnWriteHeadersComplete,
-                 weak_factory_.GetWeakPtr()));
+      base::BindOnce(&ServiceWorkerScriptURLLoader::OnWriteHeadersComplete,
+                     weak_factory_.GetWeakPtr()));
   if (error == net::ERR_IO_PENDING) {
     // OnWriteHeadersComplete() will be called asynchronously.
     return;
@@ -413,9 +413,10 @@
   // successfully wrote to the data pipe (i.e., |bytes_written|).
   net::Error error = cache_writer_->MaybeWriteData(
       buffer.get(), base::strict_cast<size_t>(bytes_written),
-      base::Bind(&ServiceWorkerScriptURLLoader::OnWriteDataComplete,
-                 weak_factory_.GetWeakPtr(),
-                 base::WrapRefCounted(pending_buffer.get()), bytes_written));
+      base::BindOnce(&ServiceWorkerScriptURLLoader::OnWriteDataComplete,
+                     weak_factory_.GetWeakPtr(),
+                     base::WrapRefCounted(pending_buffer.get()),
+                     bytes_written));
   if (error == net::ERR_IO_PENDING) {
     // OnWriteDataComplete() will be called asynchronously.
     return;
diff --git a/content/browser/service_worker/service_worker_unregister_job.cc b/content/browser/service_worker/service_worker_unregister_job.cc
index f68db8e..76e053b 100644
--- a/content/browser/service_worker/service_worker_unregister_job.cc
+++ b/content/browser/service_worker/service_worker_unregister_job.cc
@@ -35,9 +35,8 @@
 
 void ServiceWorkerUnregisterJob::Start() {
   context_->storage()->FindRegistrationForPattern(
-      pattern_,
-      base::Bind(&ServiceWorkerUnregisterJob::OnRegistrationFound,
-                 weak_factory_.GetWeakPtr()));
+      pattern_, base::BindOnce(&ServiceWorkerUnregisterJob::OnRegistrationFound,
+                               weak_factory_.GetWeakPtr()));
 }
 
 void ServiceWorkerUnregisterJob::Abort() {
diff --git a/content/browser/service_worker/service_worker_write_to_cache_job_unittest.cc b/content/browser/service_worker/service_worker_write_to_cache_job_unittest.cc
index 5cfb9b2..a5f668ca 100644
--- a/content/browser/service_worker/service_worker_write_to_cache_job_unittest.cc
+++ b/content/browser/service_worker/service_worker_write_to_cache_job_unittest.cc
@@ -216,8 +216,9 @@
   void Start() {
     info_buffer_ = new HttpResponseInfoIOBuffer();
     io_buffer_ = new net::IOBuffer(kBlockSize);
-    reader_->ReadInfo(info_buffer_.get(),
-                      base::Bind(&ResponseVerifier::OnReadInfoComplete, this));
+    reader_->ReadInfo(
+        info_buffer_.get(),
+        base::BindOnce(&ResponseVerifier::OnReadInfoComplete, this));
     bytes_read_ = 0;
   }
 
@@ -235,8 +236,9 @@
   }
 
   void ReadSomeData() {
-    reader_->ReadData(io_buffer_.get(), kBlockSize,
-                      base::Bind(&ResponseVerifier::OnReadDataComplete, this));
+    reader_->ReadData(
+        io_buffer_.get(), kBlockSize,
+        base::BindOnce(&ResponseVerifier::OnReadDataComplete, this));
   }
 
   void OnReadDataComplete(int result) {
diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage_partition_impl.cc
index a22a210..d1ad8e549 100644
--- a/content/browser/storage_partition_impl.cc
+++ b/content/browser/storage_partition_impl.cc
@@ -246,9 +246,8 @@
   DCHECK_CURRENTLY_ON(BrowserThread::UI);
 
   dom_storage_context->GetSessionStorageUsage(
-      base::Bind(&OnSessionStorageUsageInfo, dom_storage_context,
-                 special_storage_policy, origin_matcher,
-                 callback));
+      base::BindOnce(&OnSessionStorageUsageInfo, dom_storage_context,
+                     special_storage_policy, origin_matcher, callback));
 }
 
 base::WeakPtr<storage::BlobStorageContext> BlobStorageContextGetterForStorage(
diff --git a/content/browser/storage_partition_impl_map.cc b/content/browser/storage_partition_impl_map.cc
index f1e60fa..4c2b8867 100644
--- a/content/browser/storage_partition_impl_map.cc
+++ b/content/browser/storage_partition_impl_map.cc
@@ -476,11 +476,9 @@
       it->second->ClearData(
           // All except shader cache.
           ~StoragePartition::REMOVE_DATA_MASK_SHADER_CACHE,
-          StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL,
-          GURL(),
-          StoragePartition::OriginMatcherFunction(),
-          base::Time(), base::Time::Max(),
-          base::Bind(&base::DoNothing));
+          StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL, GURL(),
+          StoragePartition::OriginMatcherFunction(), base::Time(),
+          base::Time::Max(), base::BindOnce(&base::DoNothing));
       if (!config.in_memory) {
         paths_to_keep.push_back(it->second->GetPath());
       }
diff --git a/content/browser/tracing/tracing_controller_impl_data_endpoint.cc b/content/browser/tracing/tracing_controller_impl_data_endpoint.cc
index f452c25..5ce323d 100644
--- a/content/browser/tracing/tracing_controller_impl_data_endpoint.cc
+++ b/content/browser/tracing/tracing_controller_impl_data_endpoint.cc
@@ -68,15 +68,16 @@
   void ReceiveTraceChunk(std::unique_ptr<std::string> chunk) override {
     background_task_runner_->PostTask(
         FROM_HERE,
-        base::Bind(&FileTraceDataEndpoint::ReceiveTraceChunkOnBlockingThread,
-                   this, base::Passed(std::move(chunk))));
+        base::BindOnce(
+            &FileTraceDataEndpoint::ReceiveTraceChunkOnBlockingThread, this,
+            base::Passed(std::move(chunk))));
   }
 
   void ReceiveTraceFinalContents(
       std::unique_ptr<const base::DictionaryValue>) override {
     background_task_runner_->PostTask(
         FROM_HERE,
-        base::Bind(&FileTraceDataEndpoint::CloseOnBlockingThread, this));
+        base::BindOnce(&FileTraceDataEndpoint::CloseOnBlockingThread, this));
   }
 
  private:
diff --git a/content/common/throttling_url_loader.cc b/content/common/throttling_url_loader.cc
index 63970b6..fc8c821 100644
--- a/content/common/throttling_url_loader.cc
+++ b/content/common/throttling_url_loader.cc
@@ -250,7 +250,7 @@
     scoped_refptr<base::SingleThreadTaskRunner> task_runner) {
   network::mojom::URLLoaderClientPtr client;
   client_binding_.Bind(mojo::MakeRequest(&client), std::move(task_runner));
-  client_binding_.set_connection_error_handler(base::Bind(
+  client_binding_.set_connection_error_handler(base::BindOnce(
       &ThrottlingURLLoader::OnClientConnectionError, base::Unretained(this)));
 
   DCHECK(factory);
diff --git a/content/public/browser/frame_service_base.h b/content/public/browser/frame_service_base.h
index aad6a18..48b45ab 100644
--- a/content/public/browser/frame_service_base.h
+++ b/content/public/browser/frame_service_base.h
@@ -41,7 +41,7 @@
         binding_(this, std::move(request)) {
     // |this| owns |binding_|, so unretained is safe.
     binding_.set_connection_error_handler(
-        base::Bind(&FrameServiceBase::Close, base::Unretained(this)));
+        base::BindOnce(&FrameServiceBase::Close, base::Unretained(this)));
   }
 
  protected:
diff --git a/content/public/browser/push_messaging_service.cc b/content/public/browser/push_messaging_service.cc
index 9f1dfa3..afab622 100644
--- a/content/public/browser/push_messaging_service.cc
+++ b/content/public/browser/push_messaging_service.cc
@@ -45,7 +45,7 @@
   DCHECK_CURRENTLY_ON(BrowserThread::IO);
   service_worker_context_wrapper->GetRegistrationUserData(
       service_worker_registration_id, {key},
-      base::Bind(&CallStringCallbackFromIO, callback));
+      base::BindOnce(&CallStringCallbackFromIO, callback));
 }
 
 void ClearPushSubscriptionIdOnIO(
diff --git a/content/public/common/network_connection_tracker_unittest.cc b/content/public/common/network_connection_tracker_unittest.cc
index 3ee399c1..554d0d54 100644
--- a/content/public/common/network_connection_tracker_unittest.cc
+++ b/content/public/common/network_connection_tracker_unittest.cc
@@ -38,8 +38,8 @@
     network::mojom::ConnectionType type;
     base::RunLoop run_loop;
     bool sync = tracker_->GetConnectionType(
-        &type,
-        base::Bind(&TestNetworkConnectionObserver::GetConnectionTypeCallback,
+        &type, base::BindOnce(
+                   &TestNetworkConnectionObserver::GetConnectionTypeCallback,
                    &run_loop, &type));
     if (!sync)
       run_loop.Run();
@@ -93,8 +93,8 @@
     DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
     return tracker_->GetConnectionType(
         &connection_type_,
-        base::Bind(&ConnectionTypeGetter::OnGetConnectionType,
-                   base::Unretained(this)));
+        base::BindOnce(&ConnectionTypeGetter::OnGetConnectionType,
+                       base::Unretained(this)));
   }
 
   void WaitForConnectionType(
diff --git a/content/public/test/service_worker_test_helpers.cc b/content/public/test/service_worker_test_helpers.cc
index b7142bc..f675c0f 100644
--- a/content/public/test/service_worker_test_helpers.cc
+++ b/content/public/test/service_worker_test_helpers.cc
@@ -100,9 +100,9 @@
   }
   auto* context_wrapper = static_cast<ServiceWorkerContextWrapper*>(context);
   context_wrapper->FindReadyRegistrationForPattern(
-      pattern,
-      base::Bind(&FoundReadyRegistration, base::RetainedRef(context_wrapper),
-                 base::Passed(&completion_callback_ui)));
+      pattern, base::BindOnce(&FoundReadyRegistration,
+                              base::RetainedRef(context_wrapper),
+                              base::Passed(&completion_callback_ui)));
 }
 
 }  // namespace content
diff --git a/content/public/test/simple_url_loader_test_helper.cc b/content/public/test/simple_url_loader_test_helper.cc
index 5dac16c..b3a804f 100644
--- a/content/public/test/simple_url_loader_test_helper.cc
+++ b/content/public/test/simple_url_loader_test_helper.cc
@@ -20,8 +20,8 @@
   DCHECK(!callback_created_);
   callback_created_ = true;
 
-  return base::Bind(&SimpleURLLoaderTestHelper::OnCompleteCallback,
-                    weak_ptr_factory_.GetWeakPtr());
+  return base::BindOnce(&SimpleURLLoaderTestHelper::OnCompleteCallback,
+                        weak_ptr_factory_.GetWeakPtr());
 }
 
 void SimpleURLLoaderTestHelper::WaitForCallback() {
diff --git a/content/public/test/slow_download_http_response.cc b/content/public/test/slow_download_http_response.cc
index dd207ad..c6c9d4fee 100644
--- a/content/public/test/slow_download_http_response.cc
+++ b/content/public/test/slow_download_http_response.cc
@@ -38,11 +38,11 @@
                           const net::test_server::SendCompleteCallback& done) {
   if (g_should_finish_download) {
     base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(
-        FROM_HERE, base::Bind(&SendResponseBody, send, done, true),
+        FROM_HERE, base::BindOnce(&SendResponseBody, send, done, true),
         base::TimeDelta::FromMilliseconds(100));
   } else {
     base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(
-        FROM_HERE, base::Bind(&SendResponseBodyDone, send, done),
+        FROM_HERE, base::BindOnce(&SendResponseBodyDone, send, done),
         base::TimeDelta::FromMilliseconds(100));
   }
 }
diff --git a/content/public/test/test_download_http_response.cc b/content/public/test/test_download_http_response.cc
index 2665e34..069be2c 100644
--- a/content/public/test/test_download_http_response.cc
+++ b/content/public/test/test_download_http_response.cc
@@ -77,18 +77,19 @@
   params.on_pause_handler.Reset();
   BrowserThread::PostTask(
       BrowserThread::UI, FROM_HERE,
-      base::Bind(parameters.on_pause_handler,
-                 base::Bind(&OnResume, base::ThreadTaskRunnerHandle::Get(),
-                            base::Bind(&SendResponses, header, body,
-                                       starting_body_offset, std::move(params),
-                                       completion_callback, send))));
+      base::BindOnce(
+          parameters.on_pause_handler,
+          base::Bind(
+              &OnResume, base::ThreadTaskRunnerHandle::Get(),
+              base::Bind(&SendResponses, header, body, starting_body_offset,
+                         std::move(params), completion_callback, send))));
 }
 
 void OnResponseSentOnServerIOThread(
     const TestDownloadHttpResponse::OnResponseSentCallback& callback,
     std::unique_ptr<TestDownloadHttpResponse::CompletedRequest> request) {
   BrowserThread::PostTask(BrowserThread::UI, FROM_HERE,
-                          base::Bind(callback, base::Passed(&request)));
+                          base::BindOnce(callback, base::Passed(&request)));
 }
 
 // Send all responses to the client.
@@ -366,9 +367,10 @@
   if (!parameters_.injected_errors.empty() &&
       parameters_.injected_errors.front() < requested_range_end_ &&
       !parameters_.inject_error_cb.is_null()) {
-    BrowserThread::PostTask(BrowserThread::UI, FROM_HERE,
-                            base::Bind(parameters_.inject_error_cb,
-                                       requested_range_begin_, body.size()));
+    BrowserThread::PostTask(
+        BrowserThread::UI, FROM_HERE,
+        base::BindOnce(parameters_.inject_error_cb, requested_range_begin_,
+                       body.size()));
   }
 
   SendResponses(header, body, requested_range_begin_, std::move(parameters_),
diff --git a/content/public/test/url_loader_interceptor.cc b/content/public/test/url_loader_interceptor.cc
index 0def72d7..69453f4 100644
--- a/content/public/test/url_loader_interceptor.cc
+++ b/content/public/test/url_loader_interceptor.cc
@@ -264,9 +264,10 @@
   if (!BrowserThread::CurrentlyOn(BrowserThread::IO)) {
     BrowserThread::PostTask(
         BrowserThread::IO, FROM_HERE,
-        base::Bind(&URLLoaderInterceptor::CreateURLLoaderFactoryForSubresources,
-                   base::Unretained(this), base::Passed(&request), process_id,
-                   base::Passed(&original_factory)));
+        base::BindOnce(
+            &URLLoaderInterceptor::CreateURLLoaderFactoryForSubresources,
+            base::Unretained(this), base::Passed(&request), process_id,
+            base::Passed(&original_factory)));
     return;
   }
 
diff --git a/content/renderer/media/stream/media_stream_video_capturer_source_unittest.cc b/content/renderer/media/stream/media_stream_video_capturer_source_unittest.cc
index e189f67..e50fa27 100644
--- a/content/renderer/media/stream/media_stream_video_capturer_source_unittest.cc
+++ b/content/renderer/media/stream/media_stream_video_capturer_source_unittest.cc
@@ -53,7 +53,7 @@
   }
   void SetRunning(bool is_running) {
     blink::scheduler::GetSingleThreadTaskRunnerForTesting()->PostTask(
-        FROM_HERE, base::Bind(running_cb_, is_running));
+        FROM_HERE, base::BindOnce(running_cb_, is_running));
   }
   const media::VideoCaptureParams& capture_params() const {
     return capture_params_;
diff --git a/content/renderer/media/webrtc/webrtc_media_stream_adapter_map.cc b/content/renderer/media/webrtc/webrtc_media_stream_adapter_map.cc
index 7b97fed..9f8c9de 100644
--- a/content/renderer/media/webrtc/webrtc_media_stream_adapter_map.cc
+++ b/content/renderer/media/webrtc/webrtc_media_stream_adapter_map.cc
@@ -196,7 +196,7 @@
     // initialized and its secondary key is set.
     main_thread_->PostTask(
         FROM_HERE,
-        base::Bind(
+        base::BindOnce(
             &WebRtcMediaStreamAdapterMap::OnRemoteStreamAdapterInitialized,
             this,
             base::Passed(base::WrapUnique(new AdapterRef(
diff --git a/content/renderer/media_capture_from_element/html_audio_element_capturer_source.cc b/content/renderer/media_capture_from_element/html_audio_element_capturer_source.cc
index f6b4444..d6bf00c 100644
--- a/content/renderer/media_capture_from_element/html_audio_element_capturer_source.cc
+++ b/content/renderer/media_capture_from_element/html_audio_element_capturer_source.cc
@@ -44,8 +44,9 @@
   DCHECK(thread_checker_.CalledOnValidThread());
   if (audio_source_ && !is_started_) {
     base::ThreadTaskRunnerHandle::Get()->PostTask(
-        FROM_HERE, base::Bind(&HtmlAudioElementCapturerSource::SetAudioCallback,
-                              weak_factory_.GetWeakPtr()));
+        FROM_HERE,
+        base::BindOnce(&HtmlAudioElementCapturerSource::SetAudioCallback,
+                       weak_factory_.GetWeakPtr()));
     is_started_ = true;
   }
   return is_started_;
diff --git a/content/renderer/pepper/pepper_compositor_host.cc b/content/renderer/pepper/pepper_compositor_host.cc
index e6e3168..a95a2984 100644
--- a/content/renderer/pepper/pepper_compositor_host.cc
+++ b/content/renderer/pepper/pepper_compositor_host.cc
@@ -286,7 +286,7 @@
           new_layer->texture->sync_token);
       texture_layer->SetTransferableResource(
           resource,
-          viz::SingleReleaseCallback::Create(base::Bind(
+          viz::SingleReleaseCallback::Create(base::BindOnce(
               &PepperCompositorHost::ResourceReleased,
               weak_factory_.GetWeakPtr(), new_layer->common.resource_id)));
       // TODO(penghuang): get a damage region from the application and
@@ -323,7 +323,7 @@
           bitmap->id(), bitmap->sequence_number(), PP_ToGfxSize(desc.size));
       image_layer->SetTransferableResource(
           resource,
-          viz::SingleReleaseCallback::Create(base::Bind(
+          viz::SingleReleaseCallback::Create(base::BindOnce(
               &PepperCompositorHost::ImageReleased, weak_factory_.GetWeakPtr(),
               new_layer->common.resource_id, base::Passed(&image_shm),
               base::Passed(&bitmap))));
diff --git a/content/renderer/pepper/pepper_graphics_2d_host.cc b/content/renderer/pepper/pepper_graphics_2d_host.cc
index a0150fe6..f8e5930 100644
--- a/content/renderer/pepper/pepper_graphics_2d_host.cc
+++ b/content/renderer/pepper/pepper_graphics_2d_host.cc
@@ -743,8 +743,8 @@
         std::move(gpu_mailbox), GL_LINEAR, texture_target,
         std::move(sync_token), size, overlay_candidate);
     *release_callback = viz::SingleReleaseCallback::Create(
-        base::Bind(&ReleaseTextureCallback, this->AsWeakPtr(),
-                   main_thread_context_, texture_id));
+        base::BindOnce(&ReleaseTextureCallback, this->AsWeakPtr(),
+                       main_thread_context_, texture_id));
     composited_output_modified_ = false;
     return true;
   }
@@ -771,7 +771,7 @@
 
   *transferable_resource = viz::TransferableResource::MakeSoftware(
       shared_bitmap->id(), shared_bitmap->sequence_number(), pixel_image_size);
-  *release_callback = viz::SingleReleaseCallback::Create(base::Bind(
+  *release_callback = viz::SingleReleaseCallback::Create(base::BindOnce(
       &PepperGraphics2DHost::ReleaseSoftwareCallback, this->AsWeakPtr(),
       base::Passed(&shared_bitmap), pixel_image_size));
   composited_output_modified_ = false;
diff --git a/content/renderer/pepper/pepper_plugin_instance_impl.cc b/content/renderer/pepper/pepper_plugin_instance_impl.cc
index 4aef73d..88e7a2d 100644
--- a/content/renderer/pepper/pepper_plugin_instance_impl.cc
+++ b/content/renderer/pepper/pepper_plugin_instance_impl.cc
@@ -814,7 +814,7 @@
     return;
 
   std::unique_ptr<viz::SingleReleaseCallback> callback(
-      viz::SingleReleaseCallback::Create(base::Bind(
+      viz::SingleReleaseCallback::Create(base::BindOnce(
           &PepperPluginInstanceImpl::FinishedConsumingCommittedTexture,
           weak_factory_.GetWeakPtr(), committed_texture_,
           committed_texture_graphics_3d_)));
diff --git a/content/renderer/pepper/ppb_graphics_3d_impl.cc b/content/renderer/pepper/ppb_graphics_3d_impl.cc
index 1b3c33f8..31304f2 100644
--- a/content/renderer/pepper/ppb_graphics_3d_impl.cc
+++ b/content/renderer/pepper/ppb_graphics_3d_impl.cc
@@ -203,8 +203,8 @@
   } else {
     // Wait for the command to complete on the GPU to allow for throttling.
     command_buffer_->SignalSyncToken(
-        sync_token, base::Bind(&PPB_Graphics3D_Impl::OnSwapBuffers,
-                               weak_ptr_factory_.GetWeakPtr()));
+        sync_token, base::BindOnce(&PPB_Graphics3D_Impl::OnSwapBuffers,
+                                   weak_ptr_factory_.GetWeakPtr()));
   }
 
   return PP_OK_COMPLETIONPENDING;
diff --git a/content/renderer/service_worker/service_worker_subresource_loader.cc b/content/renderer/service_worker/service_worker_subresource_loader.cc
index d620bbb..d6e1525 100644
--- a/content/renderer/service_worker/service_worker_subresource_loader.cc
+++ b/content/renderer/service_worker/service_worker_subresource_loader.cc
@@ -66,8 +66,8 @@
     network::mojom::URLLoaderClientPtr ptr;
     binding_.Bind(mojo::MakeRequest(&ptr));
     binding_.set_connection_error_handler(
-        base::Bind(&HeaderRewritingURLLoaderClient::OnClientConnectionError,
-                   base::Unretained(this)));
+        base::BindOnce(&HeaderRewritingURLLoaderClient::OnClientConnectionError,
+                       base::Unretained(this)));
     return ptr;
   }
 
diff --git a/content/renderer/service_worker/web_service_worker_registration_impl.cc b/content/renderer/service_worker/web_service_worker_registration_impl.cc
index 9037a49..06b3bc3 100644
--- a/content/renderer/service_worker/web_service_worker_registration_impl.cc
+++ b/content/renderer/service_worker/web_service_worker_registration_impl.cc
@@ -260,8 +260,8 @@
   DCHECK(request.is_pending());
   binding_.Bind(std::move(request));
   binding_.set_connection_error_handler(
-      base::Bind(&WebServiceWorkerRegistrationImpl::OnConnectionError,
-                 base::Unretained(this)));
+      base::BindOnce(&WebServiceWorkerRegistrationImpl::OnConnectionError,
+                     base::Unretained(this)));
 }
 
 void WebServiceWorkerRegistrationImpl::OnConnectionError() {
diff --git a/content/shell/test_runner/test_plugin.cc b/content/shell/test_runner/test_plugin.cc
index 6c11398f..18c1077 100644
--- a/content/shell/test_runner/test_plugin.cc
+++ b/content/shell/test_runner/test_plugin.cc
@@ -296,14 +296,14 @@
   if (!mailbox_.IsZero()) {
     *resource = viz::TransferableResource::MakeGL(mailbox_, GL_LINEAR,
                                                   GL_TEXTURE_2D, sync_token_);
-    *release_callback =
-        viz::SingleReleaseCallback::Create(base::Bind(&IgnoreReleaseCallback));
+    *release_callback = viz::SingleReleaseCallback::Create(
+        base::BindOnce(&IgnoreReleaseCallback));
   } else if (shared_bitmap_) {
     *resource = viz::TransferableResource::MakeSoftware(
         shared_bitmap_->id(), shared_bitmap_->sequence_number(),
         gfx::Size(rect_.width, rect_.height));
     *release_callback = viz::SingleReleaseCallback::Create(
-        base::Bind(&ReleaseSharedMemory, base::Passed(&shared_bitmap_)));
+        base::BindOnce(&ReleaseSharedMemory, base::Passed(&shared_bitmap_)));
   }
   content_changed_ = false;
   return true;
diff --git a/content/test/appcache_test_helper.cc b/content/test/appcache_test_helper.cc
index 9f6c350..749d7620 100644
--- a/content/test/appcache_test_helper.cc
+++ b/content/test/appcache_test_helper.cc
@@ -55,8 +55,8 @@
   origins_ = origins;
   appcache_service->GetAllAppCacheInfo(
       appcache_info_.get(),
-      base::Bind(&AppCacheTestHelper::OnGotAppCacheInfo,
-                 base::Unretained(this)));
+      base::BindOnce(&AppCacheTestHelper::OnGotAppCacheInfo,
+                     base::Unretained(this)));
 
   // OnGotAppCacheInfo will quit the message loop.
   base::RunLoop().Run();
diff --git a/content/utility/in_process_utility_thread.cc b/content/utility/in_process_utility_thread.cc
index 0a39045..e229e6b 100644
--- a/content/utility/in_process_utility_thread.cc
+++ b/content/utility/in_process_utility_thread.cc
@@ -34,8 +34,8 @@
   // We need to return right away or else the main thread that started us will
   // hang.
   base::ThreadTaskRunnerHandle::Get()->PostTask(
-      FROM_HERE, base::Bind(&InProcessUtilityThread::InitInternal,
-                            base::Unretained(this)));
+      FROM_HERE, base::BindOnce(&InProcessUtilityThread::InitInternal,
+                                base::Unretained(this)));
 }
 
 void InProcessUtilityThread::CleanUp() {