Index: blimp/net/blimp_connection.cc |
diff --git a/blimp/net/blimp_connection.cc b/blimp/net/blimp_connection.cc |
index a79ffe0a05dd2ffa0b25daea81145d6da83153da..c5b07001839af3b3e3071191c7b603b210c9456c 100644 |
--- a/blimp/net/blimp_connection.cc |
+++ b/blimp/net/blimp_connection.cc |
@@ -40,7 +40,6 @@ class BlimpMessageSender : public BlimpMessageProcessor { |
PacketWriter* writer_; |
ConnectionErrorObserver* error_observer_; |
scoped_refptr<net::DrainableIOBuffer> buffer_; |
- net::CancelableCompletionCallback write_packet_callback_; |
net::CompletionCallback pending_process_msg_callback_; |
DISALLOW_COPY_AND_ASSIGN(BlimpMessageSender); |
@@ -72,19 +71,14 @@ void BlimpMessageSender::ProcessMessage( |
return; |
} |
- write_packet_callback_.Reset(base::Bind( |
- &BlimpMessageSender::OnWritePacketComplete, base::Unretained(this))); |
pending_process_msg_callback_ = callback; |
- int result = writer_->WritePacket(buffer_, write_packet_callback_.callback()); |
- if (result != net::ERR_IO_PENDING) { |
- base::MessageLoop::current()->PostTask( |
- FROM_HERE, base::Bind(write_packet_callback_.callback(), result)); |
- } |
+ writer_->WritePacket(buffer_, |
+ base::Bind(&BlimpMessageSender::OnWritePacketComplete, |
+ base::Unretained(this))); |
} |
void BlimpMessageSender::OnWritePacketComplete(int result) { |
DCHECK_NE(net::ERR_IO_PENDING, result); |
- write_packet_callback_.Cancel(); |
base::ResetAndReturn(&pending_process_msg_callback_).Run(result); |
if (result != net::OK) { |
error_observer_->OnConnectionError(result); |