| Index: net/socket/client_socket_handle.cc
|
| ===================================================================
|
| --- net/socket/client_socket_handle.cc (revision 113254)
|
| +++ net/socket/client_socket_handle.cc (working copy)
|
| @@ -15,6 +15,8 @@
|
|
|
| ClientSocketHandle::ClientSocketHandle()
|
| : is_initialized_(false),
|
| + pool_(NULL),
|
| + layered_pool_(NULL),
|
| is_reused_(false),
|
| ALLOW_THIS_IN_INITIALIZER_LIST(
|
| callback_(this, &ClientSocketHandle::OnIOComplete)),
|
| @@ -49,6 +51,10 @@
|
| group_name_.clear();
|
| is_reused_ = false;
|
| user_callback_ = NULL;
|
| + if (layered_pool_) {
|
| + pool_->RemoveLayeredPool(layered_pool_);
|
| + layered_pool_ = NULL;
|
| + }
|
| pool_ = NULL;
|
| idle_time_ = base::TimeDelta();
|
| init_time_ = base::TimeTicks();
|
| @@ -72,6 +78,19 @@
|
| return pool_->GetLoadState(group_name_, this);
|
| }
|
|
|
| +bool ClientSocketHandle::IsPoolStalled() const {
|
| + return pool_->IsStalled();
|
| +}
|
| +
|
| +void ClientSocketHandle::AddLayeredPool(LayeredPool* layered_pool) {
|
| + CHECK(layered_pool);
|
| + CHECK(!layered_pool_);
|
| + if (pool_) {
|
| + pool_->AddLayeredPool(layered_pool);
|
| + layered_pool_ = layered_pool;
|
| + }
|
| +}
|
| +
|
| void ClientSocketHandle::OnIOComplete(int result) {
|
| OldCompletionCallback* callback = user_callback_;
|
| user_callback_ = NULL;
|
|
|