Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: a206897f97e2995f108708bf04ed6a2a83203a26
https://github.com/WebKit/WebKit/commit/a206897f97e2995f108708bf04ed6a2a83203a26
Author: Ben Schwartz <[email protected]>
Date: 2025-04-10 (Thu, 10 Apr 2025)
Changed paths:
M Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm
M Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj
Log Message:
-----------
[WKTRApp] Wrong .appex extensions sometimes used.
https://bugs.webkit.org/show_bug.cgi?id=291243
rdar://148784145
Reviewed by Per Arne Vollan.
When performing layout testing using WebKitTestRunnerApp, the wrong .appex
records will sometimes be loaded. This manifests itself as either the
CaptivePortal variant being loaded instead of the standard WebContent,
system extensions being loaded instead of bundled ones, or both.
So, we do two main things to mitigate this.
The first thing we do is package WebContentCaptivePortalExtension with WKTRApp
builds. This ensures all extensions assets are within the bundle in an attempt
to prevent the app from calling system extensions.
* Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Add
WebContentCaptivePortalExtension to build products for WKTRApp.
The second (and most important) thing we do is explicitly define the bundle IDs
of the extensions that we're trying to load. This eliminates any lingering
ambiguity at runtime and allows the system to choose the correct extension.
* Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:
-> (WebKit::serviceNameAndIdentifier):
- Add the extensions in app bundle check from launchWithExtensionKit
into serviceNameAndIdentifier.
- Determine correct bundle IDs to request based on if extensions are in
an app bundle or CaptivePortal vs. WebContent.
-> (WebKit::launchWithExtensionKit):
- Remove now redundant extensions in app bundle check.
- Check for if extensions are bundled before calling process
initializers with explicit bundle IDs.
Canonical link: https://commits.webkit.org/293550@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes