Index: android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc |
diff --git a/android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc b/android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc |
index 8a3c1c328417421d70d769b7691b0a586d38f976..4fbac3522c2a4df86c526b8f62de0120da812191 100644 |
--- a/android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc |
+++ b/android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.cc |
@@ -162,6 +162,16 @@ IoThreadClientThrottle::GetIoThreadClient() const { |
if (content::ResourceRequestInfo::OriginatedFromServiceWorker(request_)) |
return AwContentsIoThreadClient::GetServiceWorkerIoThreadClient(); |
+ if (render_process_id_ == -1 || render_frame_id_ == -1) { |
+ const content::ResourceRequestInfo* resourceRequestInfo = |
+ content::ResourceRequestInfo::ForRequest(request_); |
+ if (resourceRequestInfo == nullptr) { |
+ return nullptr; |
+ } |
+ return AwContentsIoThreadClient::FromID( |
+ resourceRequestInfo->GetFrameTreeNodeId()); |
+ } |
+ |
return AwContentsIoThreadClient::FromID(render_process_id_, render_frame_id_); |
} |