Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(382)

Side by Side Diff: net/http/http_proxy_client_socket_pool.cc

Issue 208663003: Revert of Fix SPDY error-handling if the connection gets closed just after use. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/http/http_network_transaction_unittest.cc ('k') | net/http/http_stream_factory_impl_job.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "net/http/http_proxy_client_socket_pool.h" 5 #include "net/http/http_proxy_client_socket_pool.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/time/time.h" 10 #include "base/time/time.h"
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
308 spdy_pool->FindAvailableSession(key, net_log()); 308 spdy_pool->FindAvailableSession(key, net_log());
309 // It's possible that a session to the proxy has recently been created 309 // It's possible that a session to the proxy has recently been created
310 if (spdy_session) { 310 if (spdy_session) {
311 if (transport_socket_handle_.get()) { 311 if (transport_socket_handle_.get()) {
312 if (transport_socket_handle_->socket()) 312 if (transport_socket_handle_->socket())
313 transport_socket_handle_->socket()->Disconnect(); 313 transport_socket_handle_->socket()->Disconnect();
314 transport_socket_handle_->Reset(); 314 transport_socket_handle_->Reset();
315 } 315 }
316 } else { 316 } else {
317 // Create a session direct to the proxy itself 317 // Create a session direct to the proxy itself
318 spdy_session = 318 int rv = spdy_pool->CreateAvailableSessionFromSocket(
319 spdy_pool->CreateAvailableSessionFromSocket( 319 key, transport_socket_handle_.Pass(),
320 key, transport_socket_handle_.Pass(), 320 net_log(), OK, &spdy_session, /*using_ssl_*/ true);
321 net_log(), OK, /*using_ssl_*/ true); 321 if (rv < 0)
322 DCHECK(spdy_session); 322 return rv;
323 } 323 }
324 324
325 next_state_ = STATE_SPDY_PROXY_CREATE_STREAM_COMPLETE; 325 next_state_ = STATE_SPDY_PROXY_CREATE_STREAM_COMPLETE;
326 return spdy_stream_request_.StartRequest(SPDY_BIDIRECTIONAL_STREAM, 326 return spdy_stream_request_.StartRequest(SPDY_BIDIRECTIONAL_STREAM,
327 spdy_session, 327 spdy_session,
328 params_->request_url(), 328 params_->request_url(),
329 priority(), 329 priority(),
330 spdy_session->net_log(), 330 spdy_session->net_log(),
331 callback_); 331 callback_);
332 } 332 }
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
534 base_.RemoveHigherLayeredPool(higher_pool); 534 base_.RemoveHigherLayeredPool(higher_pool);
535 } 535 }
536 536
537 bool HttpProxyClientSocketPool::CloseOneIdleConnection() { 537 bool HttpProxyClientSocketPool::CloseOneIdleConnection() {
538 if (base_.CloseOneIdleSocket()) 538 if (base_.CloseOneIdleSocket())
539 return true; 539 return true;
540 return base_.CloseOneIdleConnectionInHigherLayeredPool(); 540 return base_.CloseOneIdleConnectionInHigherLayeredPool();
541 } 541 }
542 542
543 } // namespace net 543 } // namespace net
OLDNEW
« no previous file with comments | « net/http/http_network_transaction_unittest.cc ('k') | net/http/http_stream_factory_impl_job.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698