Index: chrome/browser/net/network_stats.cc |
diff --git a/chrome/browser/net/network_stats.cc b/chrome/browser/net/network_stats.cc |
index 0c3d351bcdef4b553fbd6d6e20ecc35f824b08ef..c365b063335326e1f872018d1c6532df608c7bb7 100644 |
--- a/chrome/browser/net/network_stats.cc |
+++ b/chrome/browser/net/network_stats.cc |
@@ -82,10 +82,6 @@ NetworkStats::NetworkStats() |
bytes_to_read_(0), |
bytes_to_send_(0), |
encoded_message_(""), |
- ALLOW_THIS_IN_INITIALIZER_LIST( |
- read_callback_(this, &NetworkStats::OnReadComplete)), |
- ALLOW_THIS_IN_INITIALIZER_LIST( |
- write_callback_(this, &NetworkStats::OnWriteComplete)), |
finished_callback_(NULL), |
start_time_(base::TimeTicks::Now()), |
ALLOW_THIS_IN_INITIALIZER_LIST(weak_factory_(this)) { |
@@ -246,7 +242,9 @@ void NetworkStats::ReadData() { |
// We release the read_buffer_ in the destructor if there is an error. |
read_buffer_ = new net::IOBuffer(kMaxMessage); |
- rv = socket_->Read(read_buffer_, kMaxMessage, &read_callback_); |
+ rv = socket_->Read(read_buffer_, kMaxMessage, |
+ base::Bind(&NetworkStats::OnReadComplete, |
+ base::Unretained(this))); |
if (rv == net::ERR_IO_PENDING) |
return; |
// If we have read all the data then return. |
@@ -268,7 +266,8 @@ int NetworkStats::SendData() { |
return net::ERR_UNEXPECTED; |
int rv = socket_->Write(write_buffer_, |
write_buffer_->BytesRemaining(), |
- &write_callback_); |
+ base::Bind(&NetworkStats::OnWriteComplete, |
+ base::Unretained(this))); |
if (rv < 0) |
return rv; |
write_buffer_->DidConsume(rv); |
@@ -443,10 +442,7 @@ void UDPStatsClient::Finish(Status status, int result) { |
} |
// TCPStatsClient methods and members. |
-TCPStatsClient::TCPStatsClient() |
- : NetworkStats(), |
- ALLOW_THIS_IN_INITIALIZER_LIST( |
- connect_callback_(this, &TCPStatsClient::OnConnectComplete)) { |
+TCPStatsClient::TCPStatsClient() { |
} |
TCPStatsClient::~TCPStatsClient() { |
@@ -466,7 +462,8 @@ bool TCPStatsClient::DoConnect(int result) { |
} |
set_socket(tcp_socket); |
- int rv = tcp_socket->Connect(&connect_callback_); |
+ int rv = tcp_socket->Connect(base::Bind(&TCPStatsClient::OnConnectComplete, |
+ base::Unretained(this))); |
if (rv == net::ERR_IO_PENDING) |
return true; |