Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(34)

Unified Diff: chrome/browser/safe_browsing/safe_browsing_service.cc

Issue 2647323009: Add extended reporting level in the update request (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 3071414c2277369dda797e2d03ec740e66339d7e..db8ef0eb7ecc7f3b92f1e508bf8c983039349cbd 100644
--- a/chrome/browser/safe_browsing/safe_browsing_service.cc
+++ b/chrome/browser/safe_browsing/safe_browsing_service.cc
@@ -299,6 +299,8 @@ SafeBrowsingService::SafeBrowsingService()
: services_delegate_(ServicesDelegate::Create(this)),
enabled_(false),
enabled_by_prefs_(false),
+ maybe_enabled_extended_reporting_by_prefs_(false),
+ maybe_enabled_scout_reporting_by_prefs_(false),
enabled_v4_only_(safe_browsing::V4FeatureList::IsV4OnlyEnabled()) {}
SafeBrowsingService::~SafeBrowsingService() {
@@ -671,9 +673,9 @@ void SafeBrowsingService::AddPrefService(PrefService* pref_service) {
std::unique_ptr<PrefChangeRegistrar> registrar =
base::MakeUnique<PrefChangeRegistrar>();
registrar->Init(pref_service);
- registrar->Add(prefs::kSafeBrowsingEnabled,
- base::Bind(&SafeBrowsingService::RefreshState,
- base::Unretained(this)));
+ registrar->Add(
+ prefs::kSafeBrowsingEnabled,
+ base::Bind(&SafeBrowsingService::RefreshState, base::Unretained(this)));
// ClientSideDetectionService will need to be refresh the models
// renderers have if extended-reporting changes.
registrar->Add(
@@ -720,25 +722,32 @@ SafeBrowsingService::RegisterShutdownCallback(
void SafeBrowsingService::RefreshState() {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
Jialiu Lin 2017/01/25 02:03:29 nit: extra empty line.
vakh (use Gerrit instead) 2017/01/25 02:13:41 Was intentional but removed now.
// Check if any profile requires the service to be active.
- bool enable = false;
+ enabled_by_prefs_ = false;
+ maybe_enabled_extended_reporting_by_prefs_ = false;
+ maybe_enabled_scout_reporting_by_prefs_ = false;
for (const auto& pref : prefs_map_) {
if (pref.first->GetBoolean(prefs::kSafeBrowsingEnabled)) {
- enable = true;
- break;
+ enabled_by_prefs_ = true;
+ if (pref.first->GetBoolean(
+ prefs::kSafeBrowsingExtendedReportingEnabled)) {
+ maybe_enabled_extended_reporting_by_prefs_ = true;
+ }
+ if (pref.first->GetBoolean(prefs::kSafeBrowsingScoutReportingEnabled)) {
+ maybe_enabled_scout_reporting_by_prefs_ = true;
+ }
}
}
- enabled_by_prefs_ = enable;
-
- if (enable)
+ if (enabled_by_prefs_)
Start();
else
Stop(false);
state_callback_list_.Notify();
- services_delegate_->RefreshState(enable);
+ services_delegate_->RefreshState(enabled_by_prefs_);
}
void SafeBrowsingService::SendSerializedDownloadReport(

Powered by Google App Engine
This is Rietveld 408576698