Title: [270046] trunk
Revision
270046
Author
[email protected]
Date
2020-11-19 12:51:35 -0800 (Thu, 19 Nov 2020)

Log Message

Unable to fetch an audio worklet module using a data URL
https://bugs.webkit.org/show_bug.cgi?id=219166

Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

Rebaseline WPT test now that one more check is passing.

* web-platform-tests/worklets/audio-worklet-import.https-expected.txt:

Source/WebCore:

Allow fetching an audio worklet module using a data URL.

No new tests, rebaselined existing test.

* workers/WorkerScriptLoader.cpp:
(WebCore::WorkerScriptLoader::loadAsynchronously):

Modified Paths

Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (270045 => 270046)


--- trunk/LayoutTests/imported/w3c/ChangeLog	2020-11-19 20:50:33 UTC (rev 270045)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2020-11-19 20:51:35 UTC (rev 270046)
@@ -1,5 +1,16 @@
 2020-11-19  Chris Dumez  <[email protected]>
 
+        Unable to fetch an audio worklet module using a data URL
+        https://bugs.webkit.org/show_bug.cgi?id=219166
+
+        Reviewed by Youenn Fablet.
+
+        Rebaseline WPT test now that one more check is passing.
+
+        * web-platform-tests/worklets/audio-worklet-import.https-expected.txt:
+
+2020-11-19  Chris Dumez  <[email protected]>
+
         Import web-platform-tests/compat tests from upstream
         https://bugs.webkit.org/show_bug.cgi?id=219126
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/worklets/audio-worklet-import.https-expected.txt (270045 => 270046)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/worklets/audio-worklet-import.https-expected.txt	2020-11-19 20:50:33 UTC (rev 270045)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/worklets/audio-worklet-import.https-expected.txt	2020-11-19 20:51:35 UTC (rev 270046)
@@ -10,7 +10,7 @@
 PASS Importing an invalid URL should reject the given promise with a SyntaxError.
 PASS Importing a blob URL should resolve the given promise.
 PASS Importing a file:// URL should reject the given promise.
-FAIL Importing a data URL should resolve the given promise. promise_test: Unhandled rejection with value: object "AbortError: Failed to fetch module, error: Cross origin requests are only supported for HTTP."
+PASS Importing a data URL should resolve the given promise.
 PASS Importing about:blank should reject the given promise.
 PASS Importing a cross origin resource with the Access-Control-Allow-Origin header should resolve the given promise
 PASS Importing a cross origin resource without the Access-Control-Allow-Origin header should reject the given promise

Modified: trunk/Source/WebCore/ChangeLog (270045 => 270046)


--- trunk/Source/WebCore/ChangeLog	2020-11-19 20:50:33 UTC (rev 270045)
+++ trunk/Source/WebCore/ChangeLog	2020-11-19 20:51:35 UTC (rev 270046)
@@ -1,3 +1,17 @@
+2020-11-19  Chris Dumez  <[email protected]>
+
+        Unable to fetch an audio worklet module using a data URL
+        https://bugs.webkit.org/show_bug.cgi?id=219166
+
+        Reviewed by Youenn Fablet.
+
+        Allow fetching an audio worklet module using a data URL.
+
+        No new tests, rebaselined existing test.
+
+        * workers/WorkerScriptLoader.cpp:
+        (WebCore::WorkerScriptLoader::loadAsynchronously):
+
 2020-11-19  Zalan Bujtas  <[email protected]>
 
         [Legacy Line Layout] Inline box's subpixel vertical top position should be enclosed

Modified: trunk/Source/WebCore/workers/WorkerScriptLoader.cpp (270045 => 270046)


--- trunk/Source/WebCore/workers/WorkerScriptLoader.cpp	2020-11-19 20:50:33 UTC (rev 270045)
+++ trunk/Source/WebCore/workers/WorkerScriptLoader.cpp	2020-11-19 20:51:35 UTC (rev 270046)
@@ -129,6 +129,11 @@
     options.contentSecurityPolicyEnforcement = contentSecurityPolicyEnforcement;
     if (fetchOptions.destination == FetchOptions::Destination::Serviceworker)
         options.certificateInfoPolicy = CertificateInfoPolicy::IncludeCertificateInfo;
+
+    // FIXME: We should drop the sameOriginDataURLFlag flag and implement the latest Fetch specification.
+    if (fetchOptions.destination != FetchOptions::Destination::Worker)
+        options.sameOriginDataURLFlag = SameOriginDataURLFlag::Set;
+
     // A service worker job can be executed from a worker context or a document context.
     options.serviceWorkersMode = serviceWorkerMode;
 #if ENABLE(SERVICE_WORKER)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to