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

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

Issue 2784143003: Fix a potential infinite loop in HttpStreamFactoryImpl when a new SpdySession is established (Closed)
Patch Set: rebased 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) 2016 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2016 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_JOB_CONTROLLER_H_ 5 #ifndef NET_HTTP_HTTP_STREAM_FACTORY_IMPL_JOB_CONTROLLER_H_
6 #define NET_HTTP_HTTP_STREAM_FACTORY_IMPL_JOB_CONTROLLER_H_ 6 #define NET_HTTP_HTTP_STREAM_FACTORY_IMPL_JOB_CONTROLLER_H_
7 7
8 #include "net/base/host_port_pair.h" 8 #include "net/base/host_port_pair.h"
9 #include "net/base/privacy_mode.h" 9 #include "net/base/privacy_mode.h"
10 #include "net/http/http_stream_factory_impl_job.h" 10 #include "net/http/http_stream_factory_impl_job.h"
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
244 AlternativeService GetAlternativeServiceFor( 244 AlternativeService GetAlternativeServiceFor(
245 const HttpRequestInfo& request_info, 245 const HttpRequestInfo& request_info,
246 HttpStreamRequest::Delegate* delegate, 246 HttpStreamRequest::Delegate* delegate,
247 HttpStreamRequest::StreamType stream_type); 247 HttpStreamRequest::StreamType stream_type);
248 248
249 AlternativeService GetAlternativeServiceForInternal( 249 AlternativeService GetAlternativeServiceForInternal(
250 const HttpRequestInfo& request_info, 250 const HttpRequestInfo& request_info,
251 HttpStreamRequest::Delegate* delegate, 251 HttpStreamRequest::Delegate* delegate,
252 HttpStreamRequest::StreamType stream_type); 252 HttpStreamRequest::StreamType stream_type);
253 253
254 // Remove session from the SpdySessionRequestMap.
255 void RemoveRequestFromSpdySessionRequestMap();
256
257 // Returns true if the |request_| can be fetched via an alternative 254 // Returns true if the |request_| can be fetched via an alternative
258 // proxy server, and sets |alternative_proxy_server| to the available 255 // proxy server, and sets |alternative_proxy_server| to the available
259 // alternative proxy server. |alternative_proxy_server| should not be null, 256 // alternative proxy server. |alternative_proxy_server| should not be null,
260 // and is owned by the caller. 257 // and is owned by the caller.
261 bool ShouldCreateAlternativeProxyServerJob( 258 bool ShouldCreateAlternativeProxyServerJob(
262 Job* job, 259 Job* job,
263 const ProxyInfo& proxy_info_, 260 const ProxyInfo& proxy_info_,
264 const GURL& url, 261 const GURL& url,
265 ProxyServer* alternative_proxy_server) const; 262 ProxyServer* alternative_proxy_server) const;
266 263
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
331 PrivacyMode privacy_mode_; 328 PrivacyMode privacy_mode_;
332 329
333 const NetLogWithSource net_log_; 330 const NetLogWithSource net_log_;
334 331
335 base::WeakPtrFactory<JobController> ptr_factory_; 332 base::WeakPtrFactory<JobController> ptr_factory_;
336 }; 333 };
337 334
338 } // namespace net 335 } // namespace net
339 336
340 #endif // NET_HTTP_HTTP_STREAM_FACTORY_IMPL_JOB_CONTROLLER_H_ 337 #endif // NET_HTTP_HTTP_STREAM_FACTORY_IMPL_JOB_CONTROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698