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

Side by Side Diff: net/http/http_stream_factory_impl_request.h

Issue 2784143003: Fix a potential infinite loop in HttpStreamFactoryImpl when a new SpdySession is established (Closed)
Patch Set: Address comments Created 3 years, 8 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
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 #ifndef NET_HTTP_HTTP_STREAM_FACTORY_IMPL_REQUEST_H_ 5 #ifndef NET_HTTP_HTTP_STREAM_FACTORY_IMPL_REQUEST_H_
6 #define NET_HTTP_HTTP_STREAM_FACTORY_IMPL_REQUEST_H_ 6 #define NET_HTTP_HTTP_STREAM_FACTORY_IMPL_REQUEST_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <set> 9 #include <set>
10 10
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 // supported for this SpdySessionKey, since we may need to wait for NPN to 64 // supported for this SpdySessionKey, since we may need to wait for NPN to
65 // complete before knowing if SPDY is available. 65 // complete before knowing if SPDY is available.
66 void SetSpdySessionKey(const SpdySessionKey& spdy_session_key); 66 void SetSpdySessionKey(const SpdySessionKey& spdy_session_key);
67 bool HasSpdySessionKey() const; 67 bool HasSpdySessionKey() const;
68 68
69 // Marks completion of the request. Must be called before OnStreamReady(). 69 // Marks completion of the request. Must be called before OnStreamReady().
70 void Complete(bool was_alpn_negotiated, 70 void Complete(bool was_alpn_negotiated,
71 NextProto negotiated_protocol, 71 NextProto negotiated_protocol,
72 bool using_spdy); 72 bool using_spdy);
73 73
74 void ResetSpdySessionKey();
75
76 // Called by |helper_| to record connection attempts made by the socket 74 // Called by |helper_| to record connection attempts made by the socket
77 // layer in an attached Job for this stream request. 75 // layer in an attached Job for this stream request.
78 void AddConnectionAttempts(const ConnectionAttempts& attempts); 76 void AddConnectionAttempts(const ConnectionAttempts& attempts);
79 77
80 WebSocketHandshakeStreamBase::CreateHelper* 78 WebSocketHandshakeStreamBase::CreateHelper*
81 websocket_handshake_stream_create_helper() { 79 websocket_handshake_stream_create_helper() {
82 return websocket_handshake_stream_create_helper_; 80 return websocket_handshake_stream_create_helper_;
83 } 81 }
84 82
85 // HttpStreamRequest::Delegate methods which we implement. Note we don't 83 // HttpStreamRequest::Delegate methods which we implement. Note we don't
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 bool using_spdy_; 143 bool using_spdy_;
146 ConnectionAttempts connection_attempts_; 144 ConnectionAttempts connection_attempts_;
147 145
148 const HttpStreamRequest::StreamType stream_type_; 146 const HttpStreamRequest::StreamType stream_type_;
149 DISALLOW_COPY_AND_ASSIGN(Request); 147 DISALLOW_COPY_AND_ASSIGN(Request);
150 }; 148 };
151 149
152 } // namespace net 150 } // namespace net
153 151
154 #endif // NET_HTTP_HTTP_STREAM_FACTORY_IMPL_REQUEST_H_ 152 #endif // NET_HTTP_HTTP_STREAM_FACTORY_IMPL_REQUEST_H_
OLDNEW
« no previous file with comments | « net/http/http_stream_factory_impl_job_controller.cc ('k') | net/http/http_stream_factory_impl_request.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698