Index: chrome/browser/metrics/metrics_services_manager.cc |
diff --git a/chrome/browser/metrics/metrics_services_manager.cc b/chrome/browser/metrics/metrics_services_manager.cc |
index f64ee5f86f4deaa9ef008a11648a61990a6815fc..087b9d3a3a0429382eb2cd0751abcbe71d7344ea 100644 |
--- a/chrome/browser/metrics/metrics_services_manager.cc |
+++ b/chrome/browser/metrics/metrics_services_manager.cc |
@@ -19,11 +19,19 @@ |
#include "components/metrics/metrics_service.h" |
#include "components/metrics/metrics_state_manager.h" |
#include "components/rappor/rappor_service.h" |
+#include "content/public/browser/browser_thread.h" |
#if defined(OS_CHROMEOS) |
#include "chrome/browser/chromeos/settings/cros_settings.h" |
#endif |
+// Posts StoreMetricsClientInfo on IO thread. |
Alexei Svitkine (slow)
2015/02/09 16:48:05
IO thread doesn't play into this. The current code
gayane -on leave until 09-2017
2015/02/09 19:09:23
Done.
|
+void PostStoreMetricsClientInfo(const metrics::ClientInfo& client_info) { |
+ content::BrowserThread::PostTask( |
+ content::BrowserThread::FILE, FROM_HERE, |
Alexei Svitkine (slow)
2015/02/09 16:48:05
It's better to use the worker pool for this.
i.e.
gayane -on leave until 09-2017
2015/02/09 19:09:23
Done.
|
+ base::Bind(&GoogleUpdateSettings::StoreMetricsClientInfo, client_info)); |
+} |
+ |
MetricsServicesManager::MetricsServicesManager(PrefService* local_state) |
: local_state_(local_state) { |
DCHECK(local_state); |
@@ -80,7 +88,7 @@ metrics::MetricsStateManager* MetricsServicesManager::GetMetricsStateManager() { |
local_state_, |
base::Bind(&MetricsServicesManager::IsMetricsReportingEnabled, |
base::Unretained(this)), |
- base::Bind(&GoogleUpdateSettings::StoreMetricsClientInfo), |
+ base::Bind(&PostStoreMetricsClientInfo), |
base::Bind(&GoogleUpdateSettings::LoadMetricsClientInfo)); |
} |
return metrics_state_manager_.get(); |