summaryrefslogtreecommitdiff
path: root/chromium/components/precache/content
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2016-07-14 17:41:05 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2016-08-04 12:37:36 +0000
commit399c965b6064c440ddcf4015f5f8e9d131c7a0a6 (patch)
tree6b06b60ff365abef0e13b3503d593a0df48d20e8 /chromium/components/precache/content
parent7366110654eec46f21b6824f302356426f48cd74 (diff)
downloadqtwebengine-chromium-399c965b6064c440ddcf4015f5f8e9d131c7a0a6.tar.gz
BASELINE: Update Chromium to 52.0.2743.76 and Ninja to 1.7.1
Change-Id: I382f51b959689505a60f8b707255ecb344f7d8b4 Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
Diffstat (limited to 'chromium/components/precache/content')
-rw-r--r--chromium/components/precache/content/precache_manager.cc17
-rw-r--r--chromium/components/precache/content/precache_manager.h6
-rw-r--r--chromium/components/precache/content/precache_manager_unittest.cc23
3 files changed, 30 insertions, 16 deletions
diff --git a/chromium/components/precache/content/precache_manager.cc b/chromium/components/precache/content/precache_manager.cc
index a815b16f583..1d2ddb653b7 100644
--- a/chromium/components/precache/content/precache_manager.cc
+++ b/chromium/components/precache/content/precache_manager.cc
@@ -23,6 +23,7 @@
#include "components/variations/variations_associated_data.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_thread.h"
+#include "content/public/browser/storage_partition.h"
#include "net/base/network_change_notifier.h"
using content::BrowserThread;
@@ -279,13 +280,15 @@ void PrecacheManager::OnHostsReceived(
hosts.push_back(host_count.first);
// Start precaching.
- precache_fetcher_.reset(
- new PrecacheFetcher(hosts, browser_context_->GetRequestContext(),
- GURL(variations::GetVariationParamValue(
- kPrecacheFieldTrialName, kConfigURLParam)),
- variations::GetVariationParamValue(
- kPrecacheFieldTrialName, kManifestURLPrefixParam),
- this));
+ precache_fetcher_.reset(new PrecacheFetcher(
+ hosts,
+ content::BrowserContext::GetDefaultStoragePartition(browser_context_)->
+ GetURLRequestContext(),
+ GURL(variations::GetVariationParamValue(
+ kPrecacheFieldTrialName, kConfigURLParam)),
+ variations::GetVariationParamValue(
+ kPrecacheFieldTrialName, kManifestURLPrefixParam),
+ this));
precache_fetcher_->Start();
}
diff --git a/chromium/components/precache/content/precache_manager.h b/chromium/components/precache/content/precache_manager.h
index 713671318ac..dde145a3040 100644
--- a/chromium/components/precache/content/precache_manager.h
+++ b/chromium/components/precache/content/precache_manager.h
@@ -9,6 +9,7 @@
#include <stdint.h>
#include <list>
+#include <memory>
#include <string>
#include <utility>
#include <vector>
@@ -16,7 +17,6 @@
#include "base/callback.h"
#include "base/compiler_specific.h"
#include "base/macros.h"
-#include "base/memory/scoped_ptr.h"
#include "base/memory/weak_ptr.h"
#include "components/history/core/browser/history_types.h"
#include "components/keyed_service/core/keyed_service.h"
@@ -149,7 +149,7 @@ class PrecacheManager : public KeyedService,
// The PrecacheFetcher used to precache resources. Should only be used on the
// UI thread.
- scoped_ptr<PrecacheFetcher> precache_fetcher_;
+ std::unique_ptr<PrecacheFetcher> precache_fetcher_;
// The callback that will be run if precaching finishes without being
// canceled.
@@ -157,7 +157,7 @@ class PrecacheManager : public KeyedService,
// The PrecacheDatabase for tracking precache metrics. Should only be used on
// the DB thread.
- scoped_ptr<PrecacheDatabase> precache_database_;
+ std::unique_ptr<PrecacheDatabase> precache_database_;
// Flag indicating whether or not precaching is currently in progress.
bool is_precaching_;
diff --git a/chromium/components/precache/content/precache_manager_unittest.cc b/chromium/components/precache/content/precache_manager_unittest.cc
index 5e0fde422c2..fb5dbfdfa5d 100644
--- a/chromium/components/precache/content/precache_manager_unittest.cc
+++ b/chromium/components/precache/content/precache_manager_unittest.cc
@@ -17,7 +17,7 @@
#include "base/location.h"
#include "base/single_thread_task_runner.h"
#include "base/test/histogram_tester.h"
-#include "base/thread_task_runner_handle.h"
+#include "base/threading/thread_task_runner_handle.h"
#include "components/history/core/browser/history_constants.h"
#include "components/history/core/browser/history_service.h"
#include "components/history/core/browser/history_types.h"
@@ -52,11 +52,13 @@ const char kGoodManifestURL[] =
class TestURLFetcherCallback {
public:
- scoped_ptr<net::FakeURLFetcher> CreateURLFetcher(
- const GURL& url, net::URLFetcherDelegate* delegate,
- const std::string& response_data, net::HttpStatusCode response_code,
+ std::unique_ptr<net::FakeURLFetcher> CreateURLFetcher(
+ const GURL& url,
+ net::URLFetcherDelegate* delegate,
+ const std::string& response_data,
+ net::HttpStatusCode response_code,
net::URLRequestStatus::Status status) {
- scoped_ptr<net::FakeURLFetcher> fetcher(new net::FakeURLFetcher(
+ std::unique_ptr<net::FakeURLFetcher> fetcher(new net::FakeURLFetcher(
url, delegate, response_data, response_code, status));
requested_urls_.insert(url);
@@ -141,6 +143,15 @@ class PrecacheManagerTest : public testing::Test {
base::Bind(&TestURLFetcherCallback::CreateURLFetcher,
base::Unretained(&url_callback_))) {}
+ ~PrecacheManagerTest() {
+ // precache_manager_'s constructor releases a PrecacheDatabase and deletes
+ // it on the DB thread. PrecacheDatabase already has a pending Init call
+ // which will assert in debug builds because the directory passed to it is
+ // deleted. So manually ensure that the task is run before browser_context_
+ // is destructed.
+ base::MessageLoop::current()->RunUntilIdle();
+ }
+
protected:
void SetUp() override {
base::CommandLine::ForCurrentProcess()->AppendSwitchASCII(
@@ -156,8 +167,8 @@ class PrecacheManagerTest : public testing::Test {
}
// Must be declared first so that it is destroyed last.
- content::TestBrowserContext browser_context_;
content::TestBrowserThreadBundle test_browser_thread_bundle_;
+ content::TestBrowserContext browser_context_;
PrecacheManagerUnderTest precache_manager_;
TestURLFetcherCallback url_callback_;
net::FakeURLFetcherFactory factory_;