Title: [293717] trunk
Revision
293717
Author
[email protected]
Date
2022-05-02 23:11:41 -0700 (Mon, 02 May 2022)

Log Message

URL.createObjectURL should not be exposed in service worker contexts
https://bugs.webkit.org/show_bug.cgi?id=239972

Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

* web-platform-tests/service-workers/service-worker/interface-requirements-sw.https-expected.txt:

Source/WebCore:

Covered by rebased test.

* bindings/scripts/CodeGeneratorJS.pm:
Add support for DedicatedWorker and SharedWorker in binding generator for function scope expsure.
(GenerateRuntimeEnableConditionalStringForExposeScope):
* html/DOMURL.idl:
Update WebIDL as per spec.

Modified Paths

Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (293716 => 293717)


--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-05-03 05:26:59 UTC (rev 293716)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-05-03 06:11:41 UTC (rev 293717)
@@ -1,3 +1,12 @@
+2022-05-02  Youenn Fablet  <[email protected]>
+
+        URL.createObjectURL should not be exposed in service worker contexts
+        https://bugs.webkit.org/show_bug.cgi?id=239972
+
+        Reviewed by Chris Dumez.
+
+        * web-platform-tests/service-workers/service-worker/interface-requirements-sw.https-expected.txt:
+
 2022-05-02  Alex Christensen  <[email protected]>
 
         Update some wpt tests with control characters in cookies

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/interface-requirements-sw.https-expected.txt (293716 => 293717)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/interface-requirements-sw.https-expected.txt	2022-05-03 05:26:59 UTC (rev 293716)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/interface-requirements-sw.https-expected.txt	2022-05-03 06:11:41 UTC (rev 293717)
@@ -2,5 +2,5 @@
 PASS Interfaces and attributes in ServiceWorkerGlobalScope
 PASS Event constructors
 PASS xhr is not exposed
-FAIL URL.createObjectURL is not exposed assert_false: expected false got true
+PASS URL.createObjectURL is not exposed
 

Modified: trunk/Source/WebCore/ChangeLog (293716 => 293717)


--- trunk/Source/WebCore/ChangeLog	2022-05-03 05:26:59 UTC (rev 293716)
+++ trunk/Source/WebCore/ChangeLog	2022-05-03 06:11:41 UTC (rev 293717)
@@ -1,3 +1,18 @@
+2022-05-02  Youenn Fablet  <[email protected]>
+
+        URL.createObjectURL should not be exposed in service worker contexts
+        https://bugs.webkit.org/show_bug.cgi?id=239972
+
+        Reviewed by Chris Dumez.
+
+        Covered by rebased test.
+
+        * bindings/scripts/CodeGeneratorJS.pm:
+        Add support for DedicatedWorker and SharedWorker in binding generator for function scope expsure.
+        (GenerateRuntimeEnableConditionalStringForExposeScope):
+        * html/DOMURL.idl:
+        Update WebIDL as per spec.
+
 2022-05-02  Alan Bujtas  <[email protected]>
 
         [Quirks] REGRESSION (r286874): Menu is Cut Off After Pressing Search Icon on Hotels.com

Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm (293716 => 293717)


--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm	2022-05-03 05:26:59 UTC (rev 293716)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm	2022-05-03 06:11:41 UTC (rev 293717)
@@ -4005,6 +4005,10 @@
       $wrapperType = "JSDOMWindowBase";
     } elsif ($exposed eq "Worker") {
       $wrapperType = "JSWorkerGlobalScopeBase";
+    } elsif ($exposed eq "DedicatedWorker") {
+      $wrapperType = "JSDedicatedWorkerGlobalScope";
+    } elsif ($exposed eq "SharedWorker") {
+      $wrapperType = "JSSharedWorkerGlobalScope";
     } elsif ($exposed eq "ShadowRealm") {
       $wrapperType = "JSShadowRealmGlobalScopeBase";
     } elsif ($exposed eq "Worklet") {

Modified: trunk/Source/WebCore/html/DOMURL.idl (293716 => 293717)


--- trunk/Source/WebCore/html/DOMURL.idl	2022-05-03 05:26:59 UTC (rev 293716)
+++ trunk/Source/WebCore/html/DOMURL.idl	2022-05-03 06:11:41 UTC (rev 293717)
@@ -51,6 +51,6 @@
     USVString toJSON();
 
     // https://w3c.github.io/FileAPI/#creating-revoking.
-    [CallWith=CurrentScriptExecutionContext] static DOMString createObjectURL(Blob blob);
-    [CallWith=CurrentScriptExecutionContext] static undefined revokeObjectURL(DOMString url);
+    [CallWith=CurrentScriptExecutionContext, Exposed=(Window,DedicatedWorker,SharedWorker)] static DOMString createObjectURL(Blob blob);
+    [CallWith=CurrentScriptExecutionContext, Exposed=(Window,DedicatedWorker,SharedWorker)] static undefined revokeObjectURL(DOMString url);
 };
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to