Index: chrome/browser/policy/browser_policy_connector.cc |
diff --git a/chrome/browser/policy/browser_policy_connector.cc b/chrome/browser/policy/browser_policy_connector.cc |
index 6eb74685bffae5422f8849ed936f8269b7a61979..aad33ca83efd22f2789c4e9cd1881f638294cdca 100644 |
--- a/chrome/browser/policy/browser_policy_connector.cc |
+++ b/chrome/browser/policy/browser_policy_connector.cc |
@@ -17,11 +17,13 @@ |
#include "base/path_service.h" |
#include "base/prefs/pref_registry_simple.h" |
#include "base/prefs/pref_service.h" |
+#include "base/sequenced_task_runner.h" |
#include "base/strings/string_util.h" |
#include "base/strings/stringprintf.h" |
#include "base/strings/sys_string_conversions.h" |
#include "base/strings/utf_string_conversions.h" |
#include "base/sys_info.h" |
+#include "base/threading/sequenced_worker_pool.h" |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/policy/async_policy_provider.h" |
#include "chrome/browser/policy/cloud/cloud_policy_client.h" |
@@ -277,11 +279,15 @@ void BrowserPolicyConnector::Init( |
CommandLine* command_line = CommandLine::ForCurrentProcess(); |
if (!command_line->HasSwitch(chromeos::switches::kDisableLocalAccounts)) { |
+ base::SequencedWorkerPool* blocking_pool = BrowserThread::GetBlockingPool(); |
device_local_account_policy_service_.reset( |
new DeviceLocalAccountPolicyService( |
chromeos::DBusThreadManager::Get()->GetSessionManagerClient(), |
chromeos::DeviceSettingsService::Get(), |
- chromeos::CrosSettings::Get())); |
+ chromeos::CrosSettings::Get(), |
+ blocking_pool->GetSequencedTaskRunnerWithShutdownBehavior( |
+ blocking_pool->GetSequenceToken(), |
+ base::SequencedWorkerPool::SKIP_ON_SHUTDOWN))); |
device_local_account_policy_service_->Connect( |
device_management_service_.get()); |
} |