Fix DCHECK failure in the URLLoader constructor.

The request.trusted_params.isolation_info.site_for_cookies value must
match request.site_for_cookies.

This change also adds unit test coverage for cross-origin GET redirects.
This commit is contained in:
Marshall Greenblatt
2020-09-09 13:57:46 -04:00
parent 4791109a28
commit 42f517ec69
2 changed files with 124 additions and 0 deletions

View File

@@ -906,6 +906,12 @@ void InterceptedRequest::ContinueToBeforeRedirect(
request_.referrer = GURL(redirect_info.new_referrer);
request_.referrer_policy = redirect_info.new_referrer_policy;
if (request_.trusted_params) {
request_.trusted_params->isolation_info =
request_.trusted_params->isolation_info.CreateForRedirect(
url::Origin::Create(request_.url));
}
// The request method can be changed to "GET". In this case we need to
// reset the request body manually, and strip the POST headers.
if (request_.method == net::HttpRequestHeaders::kGetMethod) {