| Index: chrome/browser/renderer_host/resource_request_details.h
|
| diff --git a/chrome/browser/renderer_host/resource_request_details.h b/chrome/browser/renderer_host/resource_request_details.h
|
| index c34af0f1403c0027a3cc6dbb796dc93b0aaa6c13..ad0df97db73e2e037237862509950e8caa1e71b6 100644
|
| --- a/chrome/browser/renderer_host/resource_request_details.h
|
| +++ b/chrome/browser/renderer_host/resource_request_details.h
|
| @@ -46,8 +46,18 @@ class ResourceRequestDetails {
|
| // such as ssl state etc.
|
| const WorkerProcessHost::WorkerInstance* worker_instance =
|
| WorkerService::GetInstance()->FindWorkerInstance(info->child_id());
|
| - origin_child_id_ =
|
| - worker_instance ? worker_instance->renderer_id() : info->child_id();
|
| + if (worker_instance) {
|
| + DCHECK(!worker_instance->worker_document_set()->IsEmpty());
|
| + const WorkerDocumentSet::DocumentInfoSet& parents =
|
| + worker_instance->worker_document_set()->documents();
|
| + // TODO(atwilson): need to notify all associated renderers in the case
|
| + // of ssl state change (http://crbug.com/25357). For now, just notify
|
| + // the first one (works for dedicated workers and shared workers with
|
| + // a single process).
|
| + origin_child_id_ = parents.begin()->renderer_id();
|
| + } else {
|
| + origin_child_id_ = info->child_id();
|
| + }
|
| }
|
|
|
| virtual ~ResourceRequestDetails() {}
|
|
|