Index: chrome/installer/setup/setup_main.cc |
diff --git a/chrome/installer/setup/setup_main.cc b/chrome/installer/setup/setup_main.cc |
index 997b8342c8cf71e3ce0fd163d6ca3c9a1f5c2e01..74320c4a4d4ac03ec10d55645e8f74cd2cffa148 100644 |
--- a/chrome/installer/setup/setup_main.cc |
+++ b/chrome/installer/setup/setup_main.cc |
@@ -45,6 +45,7 @@ |
#include "chrome/installer/setup/install.h" |
#include "chrome/installer/setup/install_worker.h" |
#include "chrome/installer/setup/installer_crash_reporting.h" |
+#include "chrome/installer/setup/installer_metrics.h" |
#include "chrome/installer/setup/setup_constants.h" |
#include "chrome/installer/setup/setup_util.h" |
#include "chrome/installer/setup/uninstall.h" |
@@ -69,6 +70,7 @@ |
#include "chrome/installer/util/self_cleaning_temp_dir.h" |
#include "chrome/installer/util/shell_util.h" |
#include "chrome/installer/util/user_experiment.h" |
+#include "chrome/installer/util/util_constants.h" |
#if defined(GOOGLE_CHROME_BUILD) |
#include "chrome/installer/util/updating_app_registration_data.h" |
@@ -1621,6 +1623,10 @@ int WINAPI wWinMain(HINSTANCE instance, HINSTANCE prev_instance, |
if (!installer::IsProcessorSupported()) |
return installer::CPU_NOT_SUPPORTED; |
+ // Persist histograms so they can be uploaded later. |
+ installer::BeginPersistentHistogramStorage( |
+ installer::kSetupHistogramAllocatorName); |
+ |
// The exit manager is in charge of calling the dtors of singletons. |
base::AtExitManager exit_manager; |
base::CommandLine::Init(0, NULL); |
@@ -1770,6 +1776,7 @@ int WINAPI wWinMain(HINSTANCE instance, HINSTANCE prev_instance, |
return_code = InstallUtil::GetInstallReturnCode(install_status); |
} |
+ installer::EndPersistentHistogramStorage(installer_state.target_path()); |
VLOG(1) << "Installation complete, returning: " << return_code; |
return return_code; |