| Index: components/invalidation/gcm_invalidation_bridge.cc
|
| diff --git a/components/invalidation/gcm_invalidation_bridge.cc b/components/invalidation/gcm_invalidation_bridge.cc
|
| index 23f40afa2d236bf00260c92f8ccb6537dffab135..691be33a0e4088329e0ce8ee816d990f2bfc8e2d 100644
|
| --- a/components/invalidation/gcm_invalidation_bridge.cc
|
| +++ b/components/invalidation/gcm_invalidation_bridge.cc
|
| @@ -165,8 +165,10 @@ GCMInvalidationBridge::GCMInvalidationBridge(
|
| weak_factory_(this) {}
|
|
|
| GCMInvalidationBridge::~GCMInvalidationBridge() {
|
| - if (subscribed_for_incoming_messages_)
|
| + if (subscribed_for_incoming_messages_) {
|
| gcm_driver_->RemoveAppHandler(kInvalidationsAppId);
|
| + gcm_driver_->RemoveConnectionObserver(this);
|
| + }
|
| }
|
|
|
| scoped_ptr<syncer::GCMNetworkChannelDelegate>
|
| @@ -285,6 +287,7 @@ void GCMInvalidationBridge::SubscribeForIncomingMessages() {
|
|
|
| DCHECK(!subscribed_for_incoming_messages_);
|
| gcm_driver_->AddAppHandler(kInvalidationsAppId, this);
|
| + gcm_driver_->AddConnectionObserver(this);
|
| core_thread_task_runner_->PostTask(
|
| FROM_HERE,
|
| base::Bind(&GCMInvalidationBridge::Core::OnConnectionStateChanged,
|
|
|