| Index: chrome/browser/net/chrome_network_delegate.cc
|
| diff --git a/chrome/browser/net/chrome_network_delegate.cc b/chrome/browser/net/chrome_network_delegate.cc
|
| index 9abf6c4261555b914b4743dac26039c6ecddf6f3..6ea4eb841a4620b3f0b1c077f59309298dc47ace 100644
|
| --- a/chrome/browser/net/chrome_network_delegate.cc
|
| +++ b/chrome/browser/net/chrome_network_delegate.cc
|
| @@ -18,6 +18,7 @@
|
| #include "chrome/browser/profiles/profile_manager.h"
|
| #include "chrome/browser/task_manager/task_manager.h"
|
| #include "chrome/common/pref_names.h"
|
| +#include "chrome/common/url_constants.h"
|
| #include "content/public/browser/browser_thread.h"
|
| #include "content/public/browser/render_view_host.h"
|
| #include "content/public/browser/resource_request_info.h"
|
| @@ -129,6 +130,7 @@ ChromeNetworkDelegate::ChromeNetworkDelegate(
|
| cookie_settings_(cookie_settings),
|
| extension_info_map_(extension_info_map),
|
| enable_referrers_(enable_referrers),
|
| + never_throttle_requests_(false),
|
| url_blacklist_manager_(url_blacklist_manager) {
|
| DCHECK(event_router);
|
| DCHECK(enable_referrers);
|
| @@ -137,6 +139,10 @@ ChromeNetworkDelegate::ChromeNetworkDelegate(
|
|
|
| ChromeNetworkDelegate::~ChromeNetworkDelegate() {}
|
|
|
| +void ChromeNetworkDelegate::NeverThrottleRequests() {
|
| + never_throttle_requests_ = true;
|
| +}
|
| +
|
| // static
|
| void ChromeNetworkDelegate::InitializeReferrersEnabled(
|
| BooleanPrefMember* enable_referrers,
|
| @@ -354,3 +360,13 @@ bool ChromeNetworkDelegate::OnCanAccessFile(const net::URLRequest& request,
|
| return true;
|
| #endif // defined(OS_CHROMEOS)
|
| }
|
| +
|
| +bool ChromeNetworkDelegate::OnCanThrottleRequest(
|
| + const net::URLRequest& request) const {
|
| + if (never_throttle_requests_) {
|
| + return false;
|
| + }
|
| +
|
| + return request.first_party_for_cookies().scheme() !=
|
| + chrome::kExtensionScheme;
|
| +}
|
|
|