From aefcde20724172d8995e153104ec5716ea1c04b3 Mon Sep 17 00:00:00 2001
From: Anne van Kesteren
While true:
Let currentURL be response's location URL, if response is not null, - and request's current URL - otherwise.
If locationURL is non-null, then set currentURL to + locationURL.
If reservedEnvironment is not null and currentURL's @@ -84669,12 +84672,13 @@ interface Location { // but see also extracting a location URL given response.
If response does not have a location URL or the location URL is not a URL whose - scheme is an HTTP(S) scheme, - then break.
+If locationURL is not a URL whose scheme is an HTTP(S) scheme, then + break.
Navigation handles redirects manually as navigation is the only place in
the web platform that cares for redirects to If locationURL is failure, then set response to a network
error. Otherwise, if response has a location URL that is a URL whose Otherwise, if locationURL is a URL whose scheme is " Otherwise, if response has a location URL that is a URL whose Otherwise, if locationURL is a URL whose scheme is a fetch scheme, then run
process a navigate fetch with a new request
- whose url is response's location URL, sourceBrowsingContext,
- browsingContext, navigationType, sandboxFlags,
- incumbentNavigationOrigin, activeDocumentNavigationOrigin, and
- historyHandling, and return.
-
- Otherwise, if response has a location URL that is a URL, run the
- process a navigate URL scheme given response's location URL and
- browsingContext, and return. Otherwise, if locationURL is a URL, run the process a
+ navigate URL scheme given locationURL and browsingContext, and
+ return. Let navigationParams be a new navigation params whose request is request,
Date: Fri, 29 Jan 2021 10:45:57 +0100
Subject: [PATCH 2/3] nit
---
source | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source b/source
index cdc5e673486..587b0a36378 100644
--- a/source
+++ b/source
@@ -2529,7 +2529,7 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
Set locationURL to response's location URL. If locationURL is not a URL whose mailto:
@@ -84685,31 +84689,25 @@ interface Location { // but see also location
- URL that is failure, then set response to a network
+ blob
", "file
", "filesystem
", or "javascript
", then set response to a network error.