| Index: chrome/browser/sync/internal_api/sync_manager.cc
|
| diff --git a/chrome/browser/sync/internal_api/sync_manager.cc b/chrome/browser/sync/internal_api/sync_manager.cc
|
| index 01541febe8de7dff01929888ccd44a8687f20f42..729fa94bf3621bc37ff51a4b272f1990dce0d2b9 100644
|
| --- a/chrome/browser/sync/internal_api/sync_manager.cc
|
| +++ b/chrome/browser/sync/internal_api/sync_manager.cc
|
| @@ -50,11 +50,10 @@
|
| #include "chrome/browser/sync/syncable/model_type_payload_map.h"
|
| #include "chrome/browser/sync/syncable/syncable.h"
|
| #include "chrome/browser/sync/util/cryptographer.h"
|
| -#include "chrome/browser/sync/util/get_session_name_task.h"
|
| +#include "chrome/browser/sync/util/get_session_name.h"
|
| #include "chrome/browser/sync/util/time.h"
|
| #include "chrome/common/chrome_switches.h"
|
| #include "chrome/common/chrome_version_info.h"
|
| -#include "content/public/browser/browser_thread.h"
|
| #include "net/base/network_change_notifier.h"
|
|
|
| using std::string;
|
| @@ -187,6 +186,7 @@ class SyncManager::SyncInternal
|
| const std::string& sync_server_and_path,
|
| int port,
|
| bool use_ssl,
|
| + const scoped_refptr<base::TaskRunner>& blocking_task_runner,
|
| HttpPostProviderFactory* post_factory,
|
| ModelSafeWorkerRegistrar* model_safe_worker_registrar,
|
| browser_sync::ExtensionsActivityMonitor*
|
| @@ -533,6 +533,10 @@ class SyncManager::SyncInternal
|
| // WeakHandle when we construct it.
|
| WeakHandle<SyncInternal> weak_handle_this_;
|
|
|
| + // |blocking_task_runner| is a TaskRunner to be used for tasks that
|
| + // may block on disk I/O.
|
| + scoped_refptr<base::TaskRunner> blocking_task_runner_;
|
| +
|
| // We give a handle to share_ to clients of the API for use when constructing
|
| // any transaction type.
|
| UserShare share_;
|
| @@ -721,6 +725,7 @@ bool SyncManager::Init(
|
| const std::string& sync_server_and_path,
|
| int sync_server_port,
|
| bool use_ssl,
|
| + const scoped_refptr<base::TaskRunner>& blocking_task_runner,
|
| HttpPostProviderFactory* post_factory,
|
| ModelSafeWorkerRegistrar* registrar,
|
| browser_sync::ExtensionsActivityMonitor* extensions_activity_monitor,
|
| @@ -742,6 +747,7 @@ bool SyncManager::Init(
|
| server_string,
|
| sync_server_port,
|
| use_ssl,
|
| + blocking_task_runner,
|
| post_factory,
|
| registrar,
|
| extensions_activity_monitor,
|
| @@ -858,6 +864,7 @@ bool SyncManager::SyncInternal::Init(
|
| const std::string& sync_server_and_path,
|
| int port,
|
| bool use_ssl,
|
| + const scoped_refptr<base::TaskRunner>& blocking_task_runner,
|
| HttpPostProviderFactory* post_factory,
|
| ModelSafeWorkerRegistrar* model_safe_worker_registrar,
|
| browser_sync::ExtensionsActivityMonitor* extensions_activity_monitor,
|
| @@ -878,6 +885,8 @@ bool SyncManager::SyncInternal::Init(
|
|
|
| weak_handle_this_ = MakeWeakHandle(weak_ptr_factory_.GetWeakPtr());
|
|
|
| + blocking_task_runner_ = blocking_task_runner;
|
| +
|
| registrar_ = model_safe_worker_registrar;
|
| change_delegate_ = change_delegate;
|
| setup_for_test_mode_ = setup_for_test_mode;
|
| @@ -980,16 +989,12 @@ bool SyncManager::SyncInternal::Init(
|
| void SyncManager::SyncInternal::UpdateCryptographerAndNigori(
|
| const base::Callback<void(bool)>& done_callback) {
|
| DCHECK(initialized_);
|
| - scoped_refptr<browser_sync::GetSessionNameTask> task =
|
| - new browser_sync::GetSessionNameTask(base::Bind(
|
| + browser_sync::GetSessionName(
|
| + blocking_task_runner_,
|
| + base::Bind(
|
| &SyncManager::SyncInternal::UpdateCryptographerAndNigoriCallback,
|
| weak_ptr_factory_.GetWeakPtr(),
|
| done_callback));
|
| - content::BrowserThread::PostTask(
|
| - content::BrowserThread::FILE,
|
| - FROM_HERE,
|
| - base::Bind(&browser_sync::GetSessionNameTask::GetSessionNameAsync,
|
| - task.get()));
|
| }
|
|
|
| void SyncManager::SyncInternal::UpdateCryptographerAndNigoriCallback(
|
|
|