Title: [275669] trunk/Source/WebKit
Revision
275669
Author
[email protected]
Date
2021-04-08 11:47:57 -0700 (Thu, 08 Apr 2021)

Log Message

[Cocoa] Temporarily retain some media services when GPU Process active
https://bugs.webkit.org/show_bug.cgi?id=224328
<rdar://problem/76370805>

Reviewed by Eric Carlson.

Testing of the GPU Process show that access to the CoreMedia routing service is still needed under
some use cases. To prevent user-facing impact, we will allow these connections while the underlying
issues are resolved.

* UIProcess/WebPageProxy.cpp:
(WebKit::temporaryMachServices): Added.
(WebKit::WebPageProxy::creationParameters): Extend access to the set of temporaryMachServices when
the GPU Process is enabled.

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (275668 => 275669)


--- trunk/Source/WebKit/ChangeLog	2021-04-08 18:41:23 UTC (rev 275668)
+++ trunk/Source/WebKit/ChangeLog	2021-04-08 18:47:57 UTC (rev 275669)
@@ -1,3 +1,20 @@
+2021-04-08  Brent Fulgham  <[email protected]>
+
+        [Cocoa] Temporarily retain some media services when GPU Process active
+        https://bugs.webkit.org/show_bug.cgi?id=224328
+        <rdar://problem/76370805>
+
+        Reviewed by Eric Carlson.
+
+        Testing of the GPU Process show that access to the CoreMedia routing service is still needed under
+        some use cases. To prevent user-facing impact, we will allow these connections while the underlying
+        issues are resolved.
+
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::temporaryMachServices): Added.
+        (WebKit::WebPageProxy::creationParameters): Extend access to the set of temporaryMachServices when
+        the GPU Process is enabled.
+
 2021-04-08  Wenson Hsieh  <[email protected]>
 
         Unreviewed, fix the internal build after r275640

Modified: trunk/Source/WebKit/UIProcess/WebPageProxy.cpp (275668 => 275669)


--- trunk/Source/WebKit/UIProcess/WebPageProxy.cpp	2021-04-08 18:41:23 UTC (rev 275668)
+++ trunk/Source/WebKit/UIProcess/WebPageProxy.cpp	2021-04-08 18:47:57 UTC (rev 275669)
@@ -7775,6 +7775,14 @@
     });
     return services;
 }
+
+static const Vector<ASCIILiteral>& temporaryMachServices()
+{
+    static const auto services = makeNeverDestroyed(Vector<ASCIILiteral> {
+        "com.apple.coremedia.routingcontext.xpc"_s // Remove after <rdar://76403302> is fixed.
+    });
+    return services;
+}
 #endif
 
 WebPageCreationParameters WebPageProxy::creationParameters(WebProcessProxy& process, DrawingAreaProxy& drawingArea, RefPtr<API::WebsitePolicies>&& websitePolicies)
@@ -7870,6 +7878,9 @@
         // FIXME(207716): The following should be removed when the GPU process is complete.
         parameters.mediaExtensionHandles = SandboxExtension::createHandlesForMachLookup(mediaRelatedMachServices(), WTF::nullopt);
         parameters.mediaIOKitExtensionHandles = SandboxExtension::createHandlesForIOKitClassExtensions(mediaRelatedIOKitClasses(), WTF::nullopt);
+    } else {
+        // FIXME(224327): Remove this else clause once <rdar://76403302> is fixed.
+        parameters.mediaExtensionHandles = SandboxExtension::createHandlesForMachLookup(temporaryMachServices(), WTF::nullopt);
     }
 
     if (!preferences().useGPUProcessForMediaEnabled()
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to