| Index: chrome/browser/devtools/device/port_forwarding_controller.cc
|
| diff --git a/chrome/browser/devtools/device/port_forwarding_controller.cc b/chrome/browser/devtools/device/port_forwarding_controller.cc
|
| index c22789b157fd2ce513c955aa2f39892140b0e517..8efda7d84d5be6c5d908388eb81f7312f498ea02 100644
|
| --- a/chrome/browser/devtools/device/port_forwarding_controller.cc
|
| +++ b/chrome/browser/devtools/device/port_forwarding_controller.cc
|
| @@ -120,8 +120,14 @@ class SocketTunnel : public base::NonThreadSafe {
|
| return;
|
| }
|
|
|
| + ++pending_writes_; // avoid SelfDestruct in first Pump
|
| Pump(host_socket_.get(), remote_socket_.get());
|
| - Pump(remote_socket_.get(), host_socket_.get());
|
| + --pending_writes_;
|
| + if (pending_destruction_) {
|
| + SelfDestruct();
|
| + } else {
|
| + Pump(remote_socket_.get(), host_socket_.get());
|
| + }
|
| }
|
|
|
| void Pump(net::StreamSocket* from, net::StreamSocket* to) {
|
|
|