Chromium Code Reviews| Index: extensions/browser/api/web_request/web_request_api.cc |
| diff --git a/extensions/browser/api/web_request/web_request_api.cc b/extensions/browser/api/web_request/web_request_api.cc |
| index ebe0c124f60d94d265035f5025fc78b9bed2f52f..ec5ceb409b6328cf9c3b90f731f9c5587ecd2f33 100644 |
| --- a/extensions/browser/api/web_request/web_request_api.cc |
| +++ b/extensions/browser/api/web_request/web_request_api.cc |
| @@ -491,10 +491,10 @@ bool ExtensionWebRequestEventRouter::RequestFilter::InitFromValue( |
| return false; |
| for (size_t i = 0; i < urls_value->GetSize(); ++i) { |
| std::string url; |
| - URLPattern pattern( |
| - URLPattern::SCHEME_HTTP | URLPattern::SCHEME_HTTPS | |
| - URLPattern::SCHEME_FTP | URLPattern::SCHEME_FILE | |
| - URLPattern::SCHEME_EXTENSION); |
| + URLPattern pattern(URLPattern::SCHEME_HTTP | URLPattern::SCHEME_HTTPS | |
| + URLPattern::SCHEME_FTP | URLPattern::SCHEME_FILE | |
| + URLPattern::SCHEME_EXTENSION | |
| + URLPattern::SCHEME_WS | URLPattern::SCHEME_WSS); |
| if (!urls_value->GetString(i, &url) || |
| pattern.Parse(url) != URLPattern::PARSE_SUCCESS) { |
| *error = ErrorUtils::FormatErrorMessage( |
| @@ -940,7 +940,7 @@ void ExtensionWebRequestEventRouter::OnCompleted( |
| request_time_tracker_->LogRequestEndTime(request->identifier(), |
| base::Time::Now()); |
| - DCHECK_EQ(net::OK, net_error); |
| + DCHECK(net_error == net::OK || net_error == net::ERR_WS_UPGRADE); |
| DCHECK(!GetAndSetSignaled(request->identifier(), kOnCompleted)); |
| @@ -978,6 +978,11 @@ void ExtensionWebRequestEventRouter::OnErrorOccurred( |
| net::URLRequest* request, |
| bool started, |
| int net_error) { |
| + if (net_error == net::ERR_WS_UPGRADE) { |
| + OnCompleted(browser_context, extension_info_map, request, net_error); |
|
Devlin
2017/02/14 01:21:38
Document why we do this?
pkalinnikov
2017/02/14 13:49:51
Done.
|
| + return; |
| + } |
| + |
| ExtensionsBrowserClient* client = ExtensionsBrowserClient::Get(); |
| if (!client) { |
| // |client| could be NULL during shutdown. |