Diff
Modified: releases/WebKitGTK/webkit-2.22/LayoutTests/ChangeLog (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/LayoutTests/ChangeLog 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/LayoutTests/ChangeLog 2018-08-20 14:08:33 UTC (rev 235076)
@@ -1,3 +1,12 @@
+2018-08-20 Rob Buis <rb...@igalia.com>
+
+ Relax Request constructor around referrers
+ https://bugs.webkit.org/show_bug.cgi?id=168649
+
+ Reviewed by Darin Adler.
+
+ * platform/mac-wk1/imported/w3c/web-platform-tests/fetch/api/request/request-init-001.sub-expected.txt:
+
2018-08-18 Ali Juma <aj...@chromium.org>
[IntersectionObserver] Fire an initial dummy notification
Modified: releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/ChangeLog (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/ChangeLog 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/ChangeLog 2018-08-20 14:08:33 UTC (rev 235076)
@@ -1,3 +1,15 @@
+2018-08-20 Rob Buis <rb...@igalia.com>
+
+ Relax Request constructor around referrers
+ https://bugs.webkit.org/show_bug.cgi?id=168649
+
+ Reviewed by Darin Adler.
+
+ * web-platform-tests/fetch/api/policies/referrer-origin-expected.txt:
+ * web-platform-tests/fetch/api/policies/referrer-origin-service-worker.https-expected.txt:
+ * web-platform-tests/fetch/api/policies/referrer-origin-worker-expected.txt:
+ * web-platform-tests/fetch/api/request/request-init-001.sub-expected.txt:
+
2018-08-18 Ali Juma <aj...@chromium.org>
[IntersectionObserver] Fire an initial dummy notification
Modified: releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-expected.txt (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-expected.txt 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-expected.txt 2018-08-20 14:08:33 UTC (rev 235076)
@@ -1,4 +1,4 @@
PASS Request's referrer is origin
-FAIL Cross-origin referrer is overridden by client origin promise_test: Unhandled rejection with value: object "TypeError: Referrer is not same-origin."
+PASS Cross-origin referrer is overridden by client origin
Modified: releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-service-worker.https-expected.txt (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-service-worker.https-expected.txt 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-service-worker.https-expected.txt 2018-08-20 14:08:33 UTC (rev 235076)
@@ -1,5 +1,5 @@
PASS Fetch in service worker: referrer with no-referrer policy
FAIL Request's referrer is origin assert_equals: request's referrer is https://localhost:9443/ expected "https://localhost:9443/" but got "https://localhost:9443/fetch/api/policies/referrer-origin.js?pipe=sub"
-FAIL Cross-origin referrer is overridden by client origin promise_test: Unhandled rejection with value: object "TypeError: Referrer is not same-origin."
+FAIL Cross-origin referrer is overridden by client origin assert_equals: request's referrer is https://localhost:9443/ expected "https://localhost:9443/" but got "https://localhost:9443/fetch/api/policies/referrer-origin.js?pipe=sub"
Modified: releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-worker-expected.txt (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-worker-expected.txt 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/policies/referrer-origin-worker-expected.txt 2018-08-20 14:08:33 UTC (rev 235076)
@@ -1,4 +1,4 @@
FAIL Request's referrer is origin assert_equals: request's referrer is http://localhost:8800/ expected "http://localhost:8800/" but got "http://localhost:8800/fetch/api/policies/referrer-origin.js?pipe=sub"
-FAIL Cross-origin referrer is overridden by client origin promise_test: Unhandled rejection with value: object "TypeError: Referrer is not same-origin."
+FAIL Cross-origin referrer is overridden by client origin assert_equals: request's referrer is http://localhost:8800/ expected "http://localhost:8800/" but got "http://localhost:8800/fetch/api/policies/referrer-origin.js?pipe=sub"
Modified: releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-init-001.sub-expected.txt (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-init-001.sub-expected.txt 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-init-001.sub-expected.txt 2018-08-20 14:08:33 UTC (rev 235076)
@@ -9,7 +9,7 @@
PASS Check referrer init value of /relative/ressource and associated getter
PASS Check referrer init value of http://localhost:8800/relative/ressource?query=true#fragment and associated getter
PASS Check referrer init value of http://localhost:8800/ and associated getter
-FAIL Check referrer init value of http://test.url and associated getter Referrer is not same-origin.
+PASS Check referrer init value of http://test.url and associated getter
PASS Check referrer init value of about:client and associated getter
PASS Check referrer init value of and associated getter
PASS Check referrerPolicy init value of and associated getter
Modified: releases/WebKitGTK/webkit-2.22/LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/fetch/api/request/request-init-001.sub-expected.txt (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/fetch/api/request/request-init-001.sub-expected.txt 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/fetch/api/request/request-init-001.sub-expected.txt 2018-08-20 14:08:33 UTC (rev 235076)
@@ -9,7 +9,7 @@
PASS Check referrer init value of /relative/ressource and associated getter
PASS Check referrer init value of http://localhost:8800/relative/ressource?query=true#fragment and associated getter
PASS Check referrer init value of http://localhost:8800/ and associated getter
-FAIL Check referrer init value of http://test.url and associated getter Referrer is not same-origin.
+PASS Check referrer init value of http://test.url and associated getter
PASS Check referrer init value of about:client and associated getter
PASS Check referrer init value of and associated getter
PASS Check referrerPolicy init value of and associated getter
Modified: releases/WebKitGTK/webkit-2.22/Source/WebCore/ChangeLog (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/Source/WebCore/ChangeLog 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/Source/WebCore/ChangeLog 2018-08-20 14:08:33 UTC (rev 235076)
@@ -1,3 +1,25 @@
+2018-08-20 Rob Buis <rb...@igalia.com>
+
+ Relax Request constructor around referrers
+ https://bugs.webkit.org/show_bug.cgi?id=168649
+
+ Reviewed by Darin Adler.
+
+ Implement remaining part of fetch change
+ https://github.com/whatwg/fetch/pull/377, i.e.
+ if "parsedReferrer’s origin is not same origin with origin",
+ then set request’s referrer to "client", instead of
+ throwing an exception [1].
+
+ WebKit's new behavior matches that of Chrome and Firefox.
+
+ Testing is covered by existing wpt tests.
+
+ [1] Step 15.3.3 of https://fetch.spec.whatwg.org/#main-fetch
+
+ * Modules/fetch/FetchRequest.cpp:
+ (WebCore::computeReferrer):
+
2018-08-19 Yusuke Suzuki <yusukesuz...@slowstart.org>
Shrink size of WebCore::Event further by reordering members
Modified: releases/WebKitGTK/webkit-2.22/Source/WebCore/Modules/fetch/FetchRequest.cpp (235075 => 235076)
--- releases/WebKitGTK/webkit-2.22/Source/WebCore/Modules/fetch/FetchRequest.cpp 2018-08-20 14:08:21 UTC (rev 235075)
+++ releases/WebKitGTK/webkit-2.22/Source/WebCore/Modules/fetch/FetchRequest.cpp 2018-08-20 14:08:33 UTC (rev 235076)
@@ -48,7 +48,7 @@
static ExceptionOr<String> computeReferrer(ScriptExecutionContext& context, const String& referrer)
{
if (referrer.isEmpty())
- return String { "no-referrer" };
+ return String { "no-referrer"_s };
// FIXME: Tighten the URL parsing algorithm according https://url.spec.whatwg.org/#concept-url-parser.
URL referrerURL = context.completeURL(referrer);
@@ -56,10 +56,10 @@
return Exception { TypeError, "Referrer is not a valid URL."_s };
if (referrerURL.protocolIs("about") && referrerURL.path() == "client")
- return String { "client" };
+ return String { "client"_s };
if (!(context.securityOrigin() && context.securityOrigin()->canRequest(referrerURL)))
- return Exception { TypeError, "Referrer is not same-origin."_s };
+ return String { "client"_s };
return String { referrerURL.string() };
}