Componentizing chrome/browser/services/gcm/gcm_desktop_utils.cc.
Moved chrome/browser/services/gcm/gcm_desktop_utils.* to
components/gcm_driver/.
Added a extra param version_info to CreateGCMDriverDesktop()
for resolving the bad dependancy from chrome.
BUG=519579
Committed: https://crrev.com/ae5abc9a10333564b9e30c5fc1013f97e19ff4e0
Cr-Commit-Position: refs/heads/master@{#347128}
Review URL: https://codereview.chromium.org/1325063002
Cr-Commit-Position: refs/heads/master@{#350184}
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
index ab85392..093afcbe 100644
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -111,8 +111,8 @@
#if !defined(OS_ANDROID)
#include "chrome/browser/chrome_device_client.h"
-#include "chrome/browser/services/gcm/gcm_desktop_utils.h"
#include "components/gcm_driver/gcm_client_factory.h"
+#include "components/gcm_driver/gcm_desktop_utils.h"
#endif
#if defined(ENABLE_BACKGROUND)
@@ -1172,11 +1172,24 @@
#else
base::FilePath store_path;
CHECK(PathService::Get(chrome::DIR_GLOBAL_GCM_STORE, &store_path));
+ base::SequencedWorkerPool* worker_pool =
+ content::BrowserThread::GetBlockingPool();
+ scoped_refptr<base::SequencedTaskRunner> blocking_task_runner(
+ worker_pool->GetSequencedTaskRunnerWithShutdownBehavior(
+ worker_pool->GetSequenceToken(),
+ base::SequencedWorkerPool::SKIP_ON_SHUTDOWN));
+
gcm_driver_ = gcm::CreateGCMDriverDesktop(
make_scoped_ptr(new gcm::GCMClientFactory),
local_state(),
store_path,
- system_request_context());
+ system_request_context(),
+ chrome::GetChannel(),
+ content::BrowserThread::GetMessageLoopProxyForThread(
+ content::BrowserThread::UI),
+ content::BrowserThread::GetMessageLoopProxyForThread(
+ content::BrowserThread::IO),
+ blocking_task_runner);
#endif // defined(OS_ANDROID)
}