| Index: net/curvecp/client_packetizer.cc
|
| diff --git a/net/curvecp/client_packetizer.cc b/net/curvecp/client_packetizer.cc
|
| index 2d96b1f38412ba5fa361438f4f31f6aa4eba8b60..72bf4a0e8b4e625d53fa7bd1dcab786448f5e1a5 100644
|
| --- a/net/curvecp/client_packetizer.cc
|
| +++ b/net/curvecp/client_packetizer.cc
|
| @@ -4,6 +4,7 @@
|
|
|
| #include "net/curvecp/client_packetizer.h"
|
|
|
| +#include "base/bind.h"
|
| #include "net/base/io_buffer.h"
|
| #include "net/base/net_errors.h"
|
| #include "net/base/sys_addrinfo.h"
|
| @@ -38,7 +39,7 @@ ClientPacketizer::ClientPacketizer()
|
| initiate_sent_(false),
|
| ALLOW_THIS_IN_INITIALIZER_LIST(
|
| io_callback_(this, &ClientPacketizer::OnIOComplete)),
|
| - ALLOW_THIS_IN_INITIALIZER_LIST(timers_factory_(this)) {
|
| + ALLOW_THIS_IN_INITIALIZER_LIST(weak_factory_(this)) {
|
| // TODO(mbelshe): Initialize our keys and such properly.
|
| // for now we use random values to keep them unique.
|
| for (int i = 0; i < 32; ++i)
|
| @@ -315,12 +316,12 @@ int ClientPacketizer::ConnectNextAddress() {
|
| void ClientPacketizer::StartHelloTimer(int milliseconds) {
|
| MessageLoop::current()->PostDelayedTask(
|
| FROM_HERE,
|
| - timers_factory_.NewRunnableMethod(&ClientPacketizer::OnHelloTimeout),
|
| + base::Bind(&ClientPacketizer::OnHelloTimeout, weak_factory_.GetWeakPtr()),
|
| milliseconds);
|
| }
|
|
|
| void ClientPacketizer::RevokeHelloTimer() {
|
| - timers_factory_.RevokeAll();
|
| + weak_factory_.InvalidateWeakPtrs();
|
| }
|
|
|
| void ClientPacketizer::OnHelloTimeout() {
|
|
|