Index: content/browser/service_worker/service_worker_url_request_job.cc |
diff --git a/content/browser/service_worker/service_worker_url_request_job.cc b/content/browser/service_worker/service_worker_url_request_job.cc |
index b2d836b947d3d99e65539ed5fb1ac42d556b6f75..338c5def889ea7924d9891dc53943b32a3ce999b 100644 |
--- a/content/browser/service_worker/service_worker_url_request_job.cc |
+++ b/content/browser/service_worker/service_worker_url_request_job.cc |
@@ -394,12 +394,19 @@ ServiceWorkerURLRequestJob::CreateFetchRequest() { |
} |
request->blob_uuid = blob_uuid; |
request->blob_size = blob_size; |
- request->referrer = GURL(request_->referrer()); |
request->credentials_mode = credentials_mode_; |
const ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(request_); |
if (info) { |
request->is_reload = ui::PageTransitionCoreTypeIs( |
info->GetPageTransition(), ui::PAGE_TRANSITION_RELOAD); |
+ request->referrer = |
+ Referrer(GURL(request_->referrer()), info->GetReferrerPolicy()); |
+ } else { |
+ CHECK( |
+ request_->referrer_policy() == |
+ net::URLRequest::CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE); |
Mike West
2015/01/21 16:13:50
Why is the CHECK here safe?
jochen (gone - plz use gerrit)
2015/01/21 16:15:47
If I thought it was safe, I'd make it a DCHECK().
jkarlin
2015/01/21 16:43:47
Certainly seems dangerous to assume the referrer p
jochen (gone - plz use gerrit)
2015/01/21 18:39:42
info is null if the request came from the browser
|
+ request->referrer = |
+ Referrer(GURL(request_->referrer()), blink::WebReferrerPolicyDefault); |
} |
return request.Pass(); |
} |