diff options
author | ericroman@google.com <ericroman@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-04 19:27:50 +0000 |
---|---|---|
committer | ericroman@google.com <ericroman@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-04 19:27:50 +0000 |
commit | 431c16ea953a80b9153ba9a8c0b17b07a96f4a24 (patch) | |
tree | a80f7c1495904416ee4d4bad8617dc19b730016b /net/http/http_network_transaction.cc | |
parent | 9a02ce35a50ff0c4a24121274652cf41a01a04b0 (diff) | |
download | chromium_src-431c16ea953a80b9153ba9a8c0b17b07a96f4a24.zip chromium_src-431c16ea953a80b9153ba9a8c0b17b07a96f4a24.tar.gz chromium_src-431c16ea953a80b9153ba9a8c0b17b07a96f4a24.tar.bz2 |
Prevent recycling TCPClientSocket in the case of https, so as not to crash.
The situation this protects against is better explained in comment 13:
http://code.google.com/p/chromium/issues/detail?id=3772#c13
Review URL: http://codereview.chromium.org/9088
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4624 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http/http_network_transaction.cc')
-rw-r--r-- | net/http/http_network_transaction.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/http/http_network_transaction.cc b/net/http/http_network_transaction.cc index cad17af..7beff25 100644 --- a/net/http/http_network_transaction.cc +++ b/net/http/http_network_transaction.cc @@ -747,8 +747,8 @@ int HttpNetworkTransaction::DoReadBodyComplete(int result) { done = true; keep_alive = response_.headers->IsKeepAlive(); // We can't reuse the connection if we read more than the advertised - // content length. - if (unfiltered_eof || + // content length, or if the tunnel was not established. + if (establishing_tunnel_ || unfiltered_eof || (content_length_ != -1 && content_read_ > content_length_)) keep_alive = false; } |