Branch: refs/heads/safari-7619.1.8-branch Home: https://github.com/WebKit/WebKit Commit: 68465c1315ea203e6e5fc3c486350a2415f19a2a https://github.com/WebKit/WebKit/commit/68465c1315ea203e6e5fc3c486350a2415f19a2a Author: Russell Epstein <repst...@apple.com> Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths: M Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7619.1.8 Identifier: 276863.1@safari-7619.1.8-branch Commit: 6ceb54487eb6c855c17ddba0f958cecc618a4854 https://github.com/WebKit/WebKit/commit/6ceb54487eb6c855c17ddba0f958cecc618a4854 Author: Per Arne Vollan <pvol...@apple.com> Date: 2024-04-01 (Mon, 01 Apr 2024) Changed paths: M Source/WTF/wtf/PlatformUse.h M Source/WebKit/Configurations/BaseExtension.xcconfig M Source/WebKit/Configurations/BaseXPCService.xcconfig M Source/WebKit/Configurations/GPUService.xcconfig M Source/WebKit/Configurations/NetworkService.xcconfig M Source/WebKit/Configurations/WebContentService.xcconfig M Source/WebKit/Configurations/WebKit.xcconfig Log Message: ----------- Cherry-pick b976b6b01acf. rdar://124008037 Enable WebKit process extensions on newer OS versions https://bugs.webkit.org/show_bug.cgi?id=270444 rdar://124008037 Reviewed by Chris Dumez. * Source/WebKit/Configurations/BaseExtension.xcconfig: * Source/WebKit/Configurations/BaseXPCService.xcconfig: * Source/WebKit/Configurations/GPUService.xcconfig: * Source/WebKit/Configurations/NetworkService.xcconfig: * Source/WebKit/Configurations/WebContentService.xcconfig: * Source/WebKit/Configurations/WebKit.xcconfig: Canonical link: https://commits.webkit.org/275857@main Identifier: 276863.2@safari-7619.1.8-branch Commit: a347680e232560eba47c3e1e48b221408a26bae6 https://github.com/WebKit/WebKit/commit/a347680e232560eba47c3e1e48b221408a26bae6 Author: Andy Estes <aes...@apple.com> Date: 2024-04-01 (Mon, 01 Apr 2024) Changed paths: M Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj R Source/WebCore/PAL/pal/spi/vision/LinearMediaKitSPI.h M Source/WebCore/platform/ios/VideoPresentationInterfaceIOS.h M Source/WebKit/Platform/ios/PlaybackSessionInterfaceLMK.mm M Source/WebKit/Platform/ios/VideoPresentationInterfaceLMK.h M Source/WebKit/Platform/ios/VideoPresentationInterfaceLMK.mm M Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.h M Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.mm M Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm M Source/WebKit/WebKit.xcodeproj/project.pbxproj A Source/WebKit/WebKitSwift/LinearMediaKit/LinearMediaKitExtras.h A Source/WebKit/WebKitSwift/LinearMediaKit/LinearMediaKitExtras.swift A Source/WebKit/WebKitSwift/LinearMediaKit/LinearMediaKitSPI.h M Source/WebKit/WebKitSwift/WebKitSwift.h Log Message: ----------- Cherry-pick ea7c4f2a0621. rdar://123529719 [visionOS] When entering video fullscreen from element fullscreen, go directly to docked mode https://bugs.webkit.org/show_bug.cgi?id=271922 rdar://123529719 Reviewed by Jer Noble. Updated WKFullScreenViewController to insert LMPlayableViewController's environmentPickerButtonView into the fullscreen controls stack view, replacing the placeholder button we had before, and to set properties on the LMPlayableViewController saying that it should dock when entering fullscreen and exit video fullscreen when undocking (thus returning to element fullscreen directly). * Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj: * Source/WebCore/platform/ios/VideoPresentationInterfaceIOS.h: (WebCore::VideoPresentationInterfaceIOS::playableViewController): * Source/WebKit/Platform/ios/PlaybackSessionInterfaceLMK.mm: (-[WKLinearMediaPlayerDelegate linearMediaPlayerToggleInlineMode:]): (-[WKLinearMediaPlayerDelegate linearMediaPlayerWillEnterFullscreen:]): (-[WKLinearMediaPlayerDelegate linearMediaPlayerWillExitFullscreen:]): (-[WKLinearMediaPlayerDelegate _exitFullscreen]): * Source/WebKit/Platform/ios/VideoPresentationInterfaceLMK.h: * Source/WebKit/Platform/ios/VideoPresentationInterfaceLMK.mm: (WebKit::VideoPresentationInterfaceLMK::setupPlayerViewController): (WebKit::VideoPresentationInterfaceLMK::playableViewController): (WebKit::VideoPresentationInterfaceLMK::ensurePlayableViewController): * Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.h: * Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.mm: (WebKit::VideoPresentationManagerProxy::playableViewController const): * Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm: (-[WKFullScreenViewController videoControlsManagerDidChange]): (-[WKFullScreenViewController _configureEnvironmentPickerButtonViewWithPlayableViewController:]): (-[WKFullScreenViewController loadView]): (-[WKFullScreenViewController _enterVideoFullscreenAction:]): Deleted. * Source/WebKit/WebKit.xcodeproj/project.pbxproj: * Source/WebKit/WebKitSwift/LinearMediaKit/LinearMediaKitExtras.h: Copied from Source/WebCore/PAL/pal/spi/vision/LinearMediaKitSPI.h. * Source/WebKit/WebKitSwift/LinearMediaKit/LinearMediaKitExtras.swift: Added. (PlayableViewController.wks_automaticallyDockOnFullScreenPresentation): (PlayableViewController.wks_dismissFullScreenOnExitingDocking): (PlayableViewController.wks_environmentPickerButtonViewController): * Source/WebKit/WebKitSwift/LinearMediaKit/LinearMediaKitSPI.h: Renamed from Source/WebCore/PAL/pal/spi/vision/LinearMediaKitSPI.h. * Source/WebKit/WebKitSwift/WebKitSwift.h: Canonical link: https://commits.webkit.org/276898@main Commit: d8a8ff2d91b363d32100452c2cad91bb87d5cda6 https://github.com/WebKit/WebKit/commit/d8a8ff2d91b363d32100452c2cad91bb87d5cda6 Author: Andy Estes <aes...@apple.com> Date: 2024-04-01 (Mon, 01 Apr 2024) Changed paths: M Source/WebKit/WebKitSwift/LinearMediaKit/LinearMediaKitExtras.swift Log Message: ----------- Cherry-pick 122f2bd05db4. rdar://125747739 Try to fix the visionOS build https://bugs.webkit.org/show_bug.cgi?id=272007 rdar://125747739 Unreviewed build fix after 276898@main. * Source/WebKit/WebKitSwift/LinearMediaKit/LinearMediaKitExtras.swift: (PlayableViewController.wks_automaticallyDockOnFullScreenPresentation): (PlayableViewController.wks_dismissFullScreenOnExitingDocking): (PlayableViewController.wks_environmentPickerButtonViewController): Canonical link: https://commits.webkit.org/276915@main Commit: 7469798a9c9d134157a04de95856cd5beaa21179 https://github.com/WebKit/WebKit/commit/7469798a9c9d134157a04de95856cd5beaa21179 Author: Mark Lam <mark....@apple.com> Date: 2024-04-02 (Tue, 02 Apr 2024) Changed paths: M JSTests/stress/ensure-crash.js M JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior-bad-transition-debug.js M JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior-bad-transition.js M JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior.js M JSTests/stress/incorrect-put-could-generate-invalid-ic-involving-dictionary-flatten-debug.js M Source/JavaScriptCore/Scripts/process-entitlements.sh M Source/JavaScriptCore/jsc.cpp M Source/WTF/wtf/Assertions.cpp M Tools/Scripts/run-jsc-stress-tests M Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb Log Message: ----------- Cherry-pick 724f7173e04a. rdar://124471961 Make run-jsc-stress-tests handle expected crashes correctly. https://bugs.webkit.org/show_bug.cgi?id=271954 rdar://124471961 Reviewed by Yusuke Suzuki. It does not make sense to have a crashOK! test attribute, which imply that the test will be flaky. A test should be deterministic. We should either expect a crash or no crash. To enable this, we'll make the following changes: 1. Change the jsc shell "crash detector" signal handler to exit with exitCode 137 (to indicate a fatal crash). 2. Fix the JSC stress test harness to actually be able to handle crashes (terminations with exitCode > 130). 3. Rename the "crashOK!" test attribute to "mustCrash!". It now makes it clear that a test is expected to crash, instead of flakily crashing sometimes. 4. Add filter conditions to tests that "mustCrash!" so that they are only run with configurations where they are expected to crash. Skip the rest. 5. Make WTFCrash() crash with WTFBreakpointTrap() on Darwin ARM64 platforms to be consistent with all other crashes. 6. Opportunistic quality of life improvement: make jsc shell timeouts crash below crashDueToJSCShellTimeout() to distinguish it from other crashes. * JSTests/stress/ensure-crash.js: * JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior-bad-transition-debug.js: * JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior-bad-transition.js: * JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior.js: * JSTests/stress/incorrect-put-could-generate-invalid-ic-involving-dictionary-flatten-debug.js: * Source/JavaScriptCore/Scripts/process-entitlements.sh: * Source/JavaScriptCore/jsc.cpp: (crashDueToJSCShellTimeout): (timeoutCheckCallback): (CommandLine::parseArguments): * Source/WTF/wtf/Assertions.cpp: * Tools/Scripts/run-jsc-stress-tests: * Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb: Canonical link: https://commits.webkit.org/276881@main Commit: 1bd9722d623db77a0576f798a1c7c1c992501e3f https://github.com/WebKit/WebKit/commit/1bd9722d623db77a0576f798a1c7c1c992501e3f Author: Timothy Hatcher <timo...@apple.com> Date: 2024-04-02 (Tue, 02 Apr 2024) Changed paths: M Source/WebKit/WebProcess/Extensions/Bindings/JSWebExtensionWrapper.cpp M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPINamespace.mm Log Message: ----------- Cherry-pick fe7e1f64e14e. rdar://125633239 Web Extension objects should return the same JS wrapper (Bitwarden popup never loads). https://webkit.org/b/272006 rdar://125633239 Reviewed by Brian Weinstein. Make a cache per global context that we use to return the same wrapper for the JSWebExtensionWrappable objects, that way equality checks in JavaScript will succeed. This was breaking Bitwarden because they are doing a switch on the storage objects to get the name, and since equality wasn't true, the switch would fail. switch (e) { case chrome.storage.local: return "local"; case chrome.storage.sync: return "sync"; case chrome.storage.session: return "session"; default: throw new Error("Unknown storage location") } * Source/WebKit/WebProcess/Extensions/Bindings/JSWebExtensionWrapper.cpp: (WebKit::wrapperCache): Added. (WebKit::cacheMapDestroyed): Added. (WebKit::wrapperCacheMap): Added. (WebKit::getCachedWrapper): Added. (WebKit::JSWebExtensionWrapper::wrap): Lookup and add the wrapper to the cache. (WebKit::JSWebExtensionWrapper::finalize): Set private to nullptr. * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPINamespace.mm: (TestWebKitAPI::TEST(WKWebExtensionAPINamespace, ObjectEquality)): Canonical link: https://commits.webkit.org/276935@main Commit: b4346af700c2c1e0cc813254f70b355e17c463a8 https://github.com/WebKit/WebKit/commit/b4346af700c2c1e0cc813254f70b355e17c463a8 Author: Andy Estes <aes...@apple.com> Date: 2024-04-03 (Wed, 03 Apr 2024) Changed paths: M Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm Log Message: ----------- Cherry-pick dc3e748f38f8. rdar://125742417 [visionOS] WebContent process crashes when entering docked fullscreen on netflix.com https://bugs.webkit.org/show_bug.cgi?id=272057 rdar://125742417 Reviewed by Jer Noble. When entering docked fullscreen on netflix.com, com.apple.WebKit.GPU crashes with the following uncaught exception: ``` *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '*** -[AVContentKeySession addContentKeyRecipient:] cannot add this object as an AVContentKeyRecipient' ``` The proximate cause is that SourceBufferPrivateAVFObjC is passing nil to -addContentKeyRecipient:, but since SampleBufferContentKeySessionSupportEnabled is enabled on visionOS this method should not even be called; AVSampleBufferAttachContentKey should be called instead. This occurs because of a mistake where we only considered extension processes to be eligible for AVSampleBufferAttachContentKey. Fixed this by replacing the extension process check with an entitlement check. * Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: (WebCore::supportsAttachContentKey): Canonical link: https://commits.webkit.org/276984@main Commit: faf827fa7d2c9560bcf6249f2a5843261ca83d7e https://github.com/WebKit/WebKit/commit/faf827fa7d2c9560bcf6249f2a5843261ca83d7e Author: Andy Estes <aes...@apple.com> Date: 2024-04-03 (Wed, 03 Apr 2024) Changed paths: M Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.mm Log Message: ----------- Cherry-pick c73791d25f70. rdar://125734832 [visionOS] After exiting docked fullscreen, element fullscreen window contains only a view snapshot https://bugs.webkit.org/show_bug.cgi?id=272114 rdar://125734832 Reviewed by Jer Noble. Element fullscreen expects to exit when switching to LinearMediaPlayer fullscreen, but we lack the API from LinearMediaKit to do this properly. As a result, when exiting LinearMediaKit fullscreen the element fullscreen window remains visible with a view snapshot displayed in place of the web view. Work around this issue by exiting element fullscreen when we receive a video receiver endpoint. * Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.mm: (WebKit::PlaybackSessionManagerProxy::setVideoReceiverEndpoint): Canonical link: https://commits.webkit.org/277031@main Commit: 03ed5be253564add6be8a522d6eb92719b169c0e https://github.com/WebKit/WebKit/commit/03ed5be253564add6be8a522d6eb92719b169c0e Author: Mike Wyrzykowski <mwyrzykow...@apple.com> Date: 2024-04-03 (Wed, 03 Apr 2024) Changed paths: M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ContextMtl.mm M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_command_buffer.h M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_command_buffer.mm M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_render_utils.mm M Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp M Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.h M Source/WebCore/Modules/webxr/WebXRWebGLLayer.cpp Log Message: ----------- Cherry-pick 4d12bc5c1a01. rdar://125751459 [WebXR] WebXR should base its foveation on the app's setting https://bugs.webkit.org/show_bug.cgi?id=272069 <radar://125824522> Reviewed by Tim Horton. Respect the app's foveation setting. Also fixup the viewport transformation. * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ContextMtl.mm: (rx::ContextMtl::setupDrawImpl): * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_command_buffer.h: * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_command_buffer.mm: (rx::mtl::RenderCommandEncoder::setViewport): (rx::mtl::RenderCommandEncoder::rasterizationRateMapForPass const): * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_render_utils.mm: (rx::mtl::ClearUtils::setupClearWithDraw): * Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp: (WebCore::WebXROpaqueFramebuffer::usesLayeredMode const): (WebCore::WebXROpaqueFramebuffer::blitSharedToLayered): (WebCore::convertViewportToPhysicalCoordinates): (WebCore::WebXROpaqueFramebuffer::drawViewport const): (WebCore::displayLayout): (WebCore::WebXROpaqueFramebuffer::setupFramebuffer): * Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.h: * Source/WebCore/Modules/webxr/WebXRWebGLLayer.cpp: (WebCore::WebXRWebGLLayer::computeViewports): Canonical link: https://commits.webkit.org/277037@main Commit: 654a8acfeda41c283be22ade4697f2703273df9c https://github.com/WebKit/WebKit/commit/654a8acfeda41c283be22ade4697f2703273df9c Author: Mike Wyrzykowski <mwyrzykow...@apple.com> Date: 2024-04-03 (Wed, 03 Apr 2024) Changed paths: M Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp Log Message: ----------- Cherry-pick 31c43b74127b. rdar://125620290 [WebXR] Depth values are not correct https://bugs.webkit.org/show_bug.cgi?id=272119 <radar://125620290> Reviewed by Dan Glastonbury. Compositor expects reverse-Z but WebXR writes forward Z values, so just zero them for now so the reprojection doesn't cause jittering. * Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp: (WebCore::WebXROpaqueFramebuffer::blitSharedToLayered): Canonical link: https://commits.webkit.org/277040@main Canonical link: https://commits.webkit.org/276863.10@safari-7619.1.8-branch Commit: 290c9d39c219693e8be810d23c2a359e43aab54c https://github.com/WebKit/WebKit/commit/290c9d39c219693e8be810d23c2a359e43aab54c Author: Mohsin Qureshi <mohs...@apple.com> Date: 2024-04-05 (Fri, 05 Apr 2024) Changed paths: M Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7619.1.8.1 Commit: 1cc1e64c83eea525d3826b4c40c6d1cd550ac3a0 https://github.com/WebKit/WebKit/commit/1cc1e64c83eea525d3826b4c40c6d1cd550ac3a0 Author: Dan Robson <dtr_bugzi...@apple.com> Date: 2024-04-08 (Mon, 08 Apr 2024) Changed paths: M Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7619.1.8.2 Canonical link: https://commits.webkit.org/276863.12@safari-7619.1.8-branch Commit: 0d3bde91488692c0fde8fa1cb448ab390d670e16 https://github.com/WebKit/WebKit/commit/0d3bde91488692c0fde8fa1cb448ab390d670e16 Author: Dan Robson <dtr_bugzi...@apple.com> Date: 2024-04-10 (Wed, 10 Apr 2024) Changed paths: M Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7619.1.8.3 Canonical link: https://commits.webkit.org/276863.13@safari-7619.1.8-branch Commit: 01ba069c5e5a12dbead28526a45cf20a8182908e https://github.com/WebKit/WebKit/commit/01ba069c5e5a12dbead28526a45cf20a8182908e Author: David Degazio <d_dega...@apple.com> Date: 2024-04-10 (Wed, 10 Apr 2024) Changed paths: M Source/bmalloc/libpas/src/libpas/pas_enumerator.c Log Message: ----------- Cherry-pick 8d6284de0e3f. rdar://125072587 Addresses may not be persistent across calls to pas_enumerator_reader https://bugs.webkit.org/show_bug.cgi?id=272404 rdar://125072587 Reviewed by Yusuke Suzuki. Stores the results of calling the reader function in pas_enumerator_create locally as opposed to referencing the remote memory. This reduction in indirection means changes to the enumerating process' mapping of the remote memory will no longer cause values the enumerator is actively using (such as the pas_root) to become unmapped. * Source/bmalloc/libpas/src/libpas/pas_enumerator.c: (pas_enumerator_create): Canonical link: https://commits.webkit.org/277271@main Canonical link: https://commits.webkit.org/276863.14@safari-7619.1.8-branch Compare: https://github.com/WebKit/WebKit/compare/68465c1315ea%5E...01ba069c5e5a To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes