| Index: content/browser/loader/cross_site_resource_handler.cc
|
| diff --git a/content/browser/loader/cross_site_resource_handler.cc b/content/browser/loader/cross_site_resource_handler.cc
|
| index a7e8f122f7ac26c6a338cf6f251dcb1f610a98bf..3e88d3395f36e831dcdafe54d1a85af0edaa9c7f 100644
|
| --- a/content/browser/loader/cross_site_resource_handler.cc
|
| +++ b/content/browser/loader/cross_site_resource_handler.cc
|
| @@ -121,6 +121,11 @@ bool CrossSiteResourceHandler::OnRequestRedirected(
|
| const GURL& new_url,
|
| ResourceResponse* response,
|
| bool* defer) {
|
| + // Top-level requests change their cookie first-party URL on redirects, while
|
| + // subframes retain the parent's value.
|
| + if (GetRequestInfo()->GetResourceType() == ResourceType::MAIN_FRAME)
|
| + request()->set_first_party_for_cookies(new_url);
|
| +
|
| // We should not have started the transition before being redirected.
|
| DCHECK(!in_cross_site_transition_);
|
| return next_handler_->OnRequestRedirected(
|
|
|