Index: chrome/browser/safe_browsing/safe_browsing_service.cc |
diff --git a/chrome/browser/safe_browsing/safe_browsing_service.cc b/chrome/browser/safe_browsing/safe_browsing_service.cc |
index c2256a62a76ce9f613affdf969223bc7ef31fd40..029166f79b14cb330ad8e6e5ff674e4500bd2102 100644 |
--- a/chrome/browser/safe_browsing/safe_browsing_service.cc |
+++ b/chrome/browser/safe_browsing/safe_browsing_service.cc |
@@ -257,7 +257,7 @@ SafeBrowsingServiceFactory* SafeBrowsingService::factory_ = NULL; |
class SafeBrowsingServiceFactoryImpl : public SafeBrowsingServiceFactory { |
public: |
SafeBrowsingService* CreateSafeBrowsingService() override { |
- return new SafeBrowsingService(); |
+ return new SafeBrowsingService(V4FeatureList::GetV4UsageStatus()); |
} |
private: |
@@ -292,12 +292,16 @@ SafeBrowsingService* SafeBrowsingService::CreateSafeBrowsingService() { |
return factory_->CreateSafeBrowsingService(); |
} |
-SafeBrowsingService::SafeBrowsingService() |
+SafeBrowsingService::SafeBrowsingService( |
+ V4FeatureList::V4UsageStatus v4_usage_status) |
: services_delegate_(ServicesDelegate::Create(this)), |
estimated_extended_reporting_by_prefs_(SBER_LEVEL_OFF), |
enabled_(false), |
enabled_by_prefs_(false), |
- enabled_v4_only_(safe_browsing::V4FeatureList::IsV4OnlyEnabled()) {} |
+ use_v4_only_(v4_usage_status == V4FeatureList::V4UsageStatus::V4_ONLY), |
+ v4_enabled_(v4_usage_status == |
+ V4FeatureList::V4UsageStatus::V4_INSTANTIATED || |
+ v4_usage_status == V4FeatureList::V4UsageStatus::V4_ONLY) {} |
SafeBrowsingService::~SafeBrowsingService() { |
// We should have already been shut down. If we're still enabled, then the |
@@ -315,7 +319,7 @@ void SafeBrowsingService::Initialize() { |
ui_manager_ = CreateUIManager(); |
- if (!enabled_v4_only_) { |
+ if (!use_v4_only_) { |
database_manager_ = CreateDatabaseManager(); |
} |
@@ -324,7 +328,7 @@ void SafeBrowsingService::Initialize() { |
navigation_observer_manager_ = new SafeBrowsingNavigationObserverManager(); |
} |
- services_delegate_->Initialize(); |
+ services_delegate_->Initialize(v4_enabled_); |
services_delegate_->InitializeCsdService(url_request_context_getter_.get()); |
// Track the safe browsing preference of existing profiles. |
@@ -415,7 +419,7 @@ SafeBrowsingService::ui_manager() const { |
const scoped_refptr<SafeBrowsingDatabaseManager>& |
SafeBrowsingService::database_manager() const { |
- return enabled_v4_only_ ? v4_local_database_manager() : database_manager_; |
+ return use_v4_only_ ? v4_local_database_manager() : database_manager_; |
} |
scoped_refptr<SafeBrowsingNavigationObserverManager> |
@@ -426,7 +430,7 @@ SafeBrowsingService::navigation_observer_manager() { |
SafeBrowsingProtocolManager* SafeBrowsingService::protocol_manager() const { |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |
#if defined(SAFE_BROWSING_DB_LOCAL) |
- DCHECK(!enabled_v4_only_); |
+ DCHECK(!use_v4_only_); |
return protocol_manager_.get(); |
#else |
return nullptr; |
@@ -556,7 +560,7 @@ std::string SafeBrowsingService::GetProtocolConfigClientName() const { |
SafeBrowsingProtocolManagerDelegate* |
SafeBrowsingService::GetProtocolManagerDelegate() { |
#if defined(SAFE_BROWSING_DB_LOCAL) |
- DCHECK(!enabled_v4_only_); |
+ DCHECK(!use_v4_only_); |
return static_cast<LocalSafeBrowsingDatabaseManager*>( |
database_manager_.get()); |
#else |
@@ -578,14 +582,14 @@ void SafeBrowsingService::StartOnIOThread( |
services_delegate_->StartOnIOThread(url_request_context_getter, v4_config); |
#if defined(SAFE_BROWSING_DB_LOCAL) || defined(SAFE_BROWSING_DB_REMOTE) |
- if (!enabled_v4_only_) { |
+ if (!use_v4_only_) { |
DCHECK(database_manager_.get()); |
database_manager_->StartOnIOThread(url_request_context_getter, v4_config); |
} |
#endif |
#if defined(SAFE_BROWSING_DB_LOCAL) |
- if (!enabled_v4_only_) { |
+ if (!use_v4_only_) { |
SafeBrowsingProtocolManagerDelegate* protocol_manager_delegate = |
GetProtocolManagerDelegate(); |
if (protocol_manager_delegate) { |
@@ -605,7 +609,7 @@ void SafeBrowsingService::StopOnIOThread(bool shutdown) { |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |
#if defined(SAFE_BROWSING_DB_LOCAL) || defined(SAFE_BROWSING_DB_REMOTE) |
- if (!enabled_v4_only_) { |
+ if (!use_v4_only_) { |
database_manager_->StopOnIOThread(shutdown); |
} |
#endif |