| Index: components/invalidation/gcm_network_channel.cc
|
| diff --git a/components/invalidation/gcm_network_channel.cc b/components/invalidation/gcm_network_channel.cc
|
| index 8f9caeda8bc1e4195499d99e1fe4410d5f5ad729..9f74b551c11f68df2f9c17588af0af525a6bee17 100644
|
| --- a/components/invalidation/gcm_network_channel.cc
|
| +++ b/components/invalidation/gcm_network_channel.cc
|
| @@ -4,10 +4,13 @@
|
|
|
| #include "base/base64.h"
|
| #include "base/i18n/time_formatting.h"
|
| +#include "base/location.h"
|
| #include "base/metrics/histogram.h"
|
| #include "base/sha1.h"
|
| +#include "base/single_thread_task_runner.h"
|
| #include "base/strings/string_number_conversions.h"
|
| #include "base/strings/string_util.h"
|
| +#include "base/thread_task_runner_handle.h"
|
| #if !defined(OS_ANDROID)
|
| // channel_common.proto defines ANDROID constant that conflicts with Android
|
| // build. At the same time TiclInvalidationService is not used on Android so it
|
| @@ -146,10 +149,9 @@ void GCMNetworkChannel::OnRegisterComplete(
|
| case gcm::GCMClient::TTL_EXCEEDED:
|
| case gcm::GCMClient::UNKNOWN_ERROR: {
|
| register_backoff_entry_->InformOfRequest(false);
|
| - base::MessageLoop::current()->PostDelayedTask(
|
| - FROM_HERE,
|
| - base::Bind(&GCMNetworkChannel::Register,
|
| - weak_factory_.GetWeakPtr()),
|
| + base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(
|
| + FROM_HERE, base::Bind(&GCMNetworkChannel::Register,
|
| + weak_factory_.GetWeakPtr()),
|
| register_backoff_entry_->GetTimeUntilRelease());
|
| break;
|
| }
|
|
|