diff options
author | petersont@google.com <petersont@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-16 02:18:07 +0000 |
---|---|---|
committer | petersont@google.com <petersont@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-16 02:18:07 +0000 |
commit | d01b873dae981f54da8b3d0a818cb0c487d56ec6 (patch) | |
tree | e82f49c73a0ae789c96c5752bc239e45861c3dea /chrome/browser/browser_main.cc | |
parent | 41aa0e41f6b14d4d6c847a2498994ef382d51f38 (diff) | |
download | chromium_src-d01b873dae981f54da8b3d0a818cb0c487d56ec6.zip chromium_src-d01b873dae981f54da8b3d0a818cb0c487d56ec6.tar.gz chromium_src-d01b873dae981f54da8b3d0a818cb0c487d56ec6.tar.bz2 |
This is the same change as 2419 minus a line of debug code I accidentally left in browser_main.cc which ignored the user preference.
Review URL: http://codereview.chromium.org/4229
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3448 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_main.cc')
-rw-r--r-- | chrome/browser/browser_main.cc | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/chrome/browser/browser_main.cc b/chrome/browser/browser_main.cc index 049a402..6e819b2 100644 --- a/chrome/browser/browser_main.cc +++ b/chrome/browser/browser_main.cc @@ -531,14 +531,27 @@ int BrowserMain(CommandLine &parsed_command_line, int show_command, MetricsService* metrics = NULL; if (!parsed_command_line.HasSwitch(switches::kDisableMetrics)) { - if (parsed_command_line.HasSwitch(switches::kDisableMetricsReporting)) { + if (parsed_command_line.HasSwitch(switches::kMetricsRecordingOnly)) { local_state->transient()->SetBoolean(prefs::kMetricsReportingEnabled, false); } metrics = browser_process->metrics_service(); DCHECK(metrics); - // Start user experience metrics recording, if enabled. - metrics->SetRecording(local_state->GetBoolean(prefs::kMetricsIsRecording)); + + // If we're testing then we don't care what the user + // preference is, we turn on recording, but not reporting, otherwise tests + // fail. + if (parsed_command_line.HasSwitch(switches::kMetricsRecordingOnly)) { + metrics->StartRecordingOnly(); + } else { + // If the user permits metrics reporting with the checkbox in the + // prefs, we turn on recording. + bool enabled = local_state->GetBoolean(prefs::kMetricsReportingEnabled); + + metrics->SetUserPermitsUpload(enabled); + if (enabled) + metrics->Start(); + } } InstallJankometer(parsed_command_line); @@ -559,7 +572,7 @@ int BrowserMain(CommandLine &parsed_command_line, int show_command, } if (metrics) - metrics->SetRecording(false); // Force persistent save. + metrics->Stop(); // browser_shutdown takes care of deleting browser_process, so we need to // release it. |