OLD | NEW |
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 #include "android_webview/browser/renderer_host/aw_resource_dispatcher_host_dele
gate.h" | 5 #include "android_webview/browser/renderer_host/aw_resource_dispatcher_host_dele
gate.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "android_webview/browser/aw_browser_context.h" | 10 #include "android_webview/browser/aw_browser_context.h" |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
155 | 155 |
156 const char* IoThreadClientThrottle::GetNameForLogging() const { | 156 const char* IoThreadClientThrottle::GetNameForLogging() const { |
157 return "IoThreadClientThrottle"; | 157 return "IoThreadClientThrottle"; |
158 } | 158 } |
159 | 159 |
160 std::unique_ptr<AwContentsIoThreadClient> | 160 std::unique_ptr<AwContentsIoThreadClient> |
161 IoThreadClientThrottle::GetIoThreadClient() const { | 161 IoThreadClientThrottle::GetIoThreadClient() const { |
162 if (content::ResourceRequestInfo::OriginatedFromServiceWorker(request_)) | 162 if (content::ResourceRequestInfo::OriginatedFromServiceWorker(request_)) |
163 return AwContentsIoThreadClient::GetServiceWorkerIoThreadClient(); | 163 return AwContentsIoThreadClient::GetServiceWorkerIoThreadClient(); |
164 | 164 |
| 165 if (render_process_id_ == -1 || render_frame_id_ == -1) { |
| 166 const content::ResourceRequestInfo* resourceRequestInfo = |
| 167 content::ResourceRequestInfo::ForRequest(request_); |
| 168 if (resourceRequestInfo == nullptr) { |
| 169 return nullptr; |
| 170 } |
| 171 return AwContentsIoThreadClient::FromID( |
| 172 resourceRequestInfo->GetFrameTreeNodeId()); |
| 173 } |
| 174 |
165 return AwContentsIoThreadClient::FromID(render_process_id_, render_frame_id_); | 175 return AwContentsIoThreadClient::FromID(render_process_id_, render_frame_id_); |
166 } | 176 } |
167 | 177 |
168 void IoThreadClientThrottle::WillStartRequest(bool* defer) { | 178 void IoThreadClientThrottle::WillStartRequest(bool* defer) { |
169 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 179 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
170 // valid render_frame_id_ implies nonzero render_processs_id_ | 180 // valid render_frame_id_ implies nonzero render_processs_id_ |
171 DCHECK((render_frame_id_ < 1) || (render_process_id_ != 0)); | 181 DCHECK((render_frame_id_ < 1) || (render_process_id_ != 0)); |
172 *defer = false; | 182 *defer = false; |
173 | 183 |
174 // Defer all requests of a pop up that is still not associated with Java | 184 // Defer all requests of a pop up that is still not associated with Java |
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
492 net::HttpRequestHeaders headers; | 502 net::HttpRequestHeaders headers; |
493 headers.AddHeadersFromString(extra_headers); | 503 headers.AddHeadersFromString(extra_headers); |
494 for (net::HttpRequestHeaders::Iterator it(headers); it.GetNext(); ) { | 504 for (net::HttpRequestHeaders::Iterator it(headers); it.GetNext(); ) { |
495 request->SetExtraRequestHeaderByName(it.name(), it.value(), false); | 505 request->SetExtraRequestHeaderByName(it.name(), it.value(), false); |
496 } | 506 } |
497 } | 507 } |
498 } | 508 } |
499 } | 509 } |
500 | 510 |
501 } // namespace android_webview | 511 } // namespace android_webview |
OLD | NEW |