[webkit-changes] [WebKit/WebKit] 0043fb: Versioning.
Jonathan Bedard
noreply at github.com
Mon Mar 27 14:46:00 PDT 2023
Branch: refs/heads/safari-7614.2.9.0-branch
Home: https://github.com/WebKit/WebKit
Commit: 0043fb534cfad5b5fa04f0793acdf0a2bbc44a25
https://github.com/WebKit/WebKit/commit/0043fb534cfad5b5fa04f0793acdf0a2bbc44a25
Author: Alan Coon <alancoon at apple.com>
Date: 2022-09-21 (Wed, 21 Sep 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.1
Canonical link: https://commits.webkit.org/252432.461@safari-7614.2.9.0-branch
Commit: fa99563b36696a9e2af9807dc9ec2da39586c028
https://github.com/WebKit/WebKit/commit/fa99563b36696a9e2af9807dc9ec2da39586c028
Author: Alan Coon <alancoon at apple.com>
Date: 2022-09-22 (Thu, 22 Sep 2022)
Changed paths:
M Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/RestoreScrollPosition.mm
Log Message:
-----------
Apply patch. rdar://problem/96703879
Canonical link: https://commits.webkit.org/252432.462@safari-7614.2.9.0-branch
Commit: f2bfc8d76ca2e185cb39af970407cba938fd389b
https://github.com/WebKit/WebKit/commit/f2bfc8d76ca2e185cb39af970407cba938fd389b
Author: Sammy Gill <sammy.gill at apple.com>
Date: 2022-09-22 (Thu, 22 Sep 2022)
Changed paths:
A LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-definite-cross-size-constrained-percentage-expected.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-definite-cross-size-constrained-percentage-ref.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-definite-cross-size-constrained-percentage.html
M Source/WebCore/rendering/RenderFlexibleBox.cpp
Log Message:
-----------
Cherry-pick 39cc41965e9e. rdar://problem/99469852
Consider Container Percentage Sizes When Determining Definite Cross Size
https://bugs.webkit.org/show_bug.cgi?id=245194
rdar://99469852
Reviewed by Alan Bujtas.
When computing the transferred size suggestion for the minimum size of
flex items, we need to use the intrinsic aspect ratio and the definite
cross size. Both the Flexbox specification and CSS-Sizing specification
provide information on when a size can be considered definite. This
patch implements the following portion of the Flexbox spec to determine
the definite cross size:
If a single-line flex container has a definite cross size, the outer
cross size of any stretched flex items is the flex container’s inner
cross size (clamped to the flex item’s min and max cross size) and is
considered definite.
The new test case provides an instance of a scenario where this addition
is important. The image is being used as a flex item, but the flex
container is being constrained by another containing block that has a
specified height that is smaller than the image. When computing the
automatic minimum size (specifically the transferred size suggestion),
we can determine that the flex container has a definite cross size using
its percentage specified height along with the height available to it.
Then, we can use this cross size along with the image's aspect ratio
to determine the appropriate main size.
Spec: https://www.w3.org/TR/css-flexbox-1/#min-size-auto
https://www.w3.org/TR/css-flexbox-1/#definite
* Source/WebCore/rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::childCrossSizeShouldUseContainerCrossSize const):
(WebCore::RenderFlexibleBox::computeCrossSizeForChildUsingContainerCrossSize const):
Canonical link: https://commits.webkit.org/254758@main
Canonical link: https://commits.webkit.org/252432.463@safari-7614.2.9.0-branch
Commit: b084e9b85af3cc67c3b065f26a7301c0b3878840
https://github.com/WebKit/WebKit/commit/b084e9b85af3cc67c3b065f26a7301c0b3878840
Author: Simon Fraser <simon.fraser at apple.com>
Date: 2022-09-22 (Thu, 22 Sep 2022)
Changed paths:
M Source/WebCore/page/scrolling/ScrollingTree.cpp
M Source/WebCore/page/scrolling/ScrollingTree.h
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.h
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.messages.in
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.mm
Log Message:
-----------
Cherry-pick e7b60434701b. rdar://problem/100283905
REGRESSION (iOS 15.5): Angular Materials style triggers poor performance on a long scrolling page
https://bugs.webkit.org/show_bug.cgi?id=241458
<rdar://95287714>
Reviewed by Tim Horton.
Batch scrolling updates for sub-scrollers from the UI process to the web process to avoid getting
backed up doing expensive compositing updates when the web process receives a flood of scroll update
IPC messages.
RemoteScrollingCoordinatorProxy can use ScrollingTree's existing ability to coalesce updates,
relying on a reply to the async IPC to know when the web process has finished handling the previous
update.
I tried to make an API test for this, but failed; it would need to detect when the web process
handles a stream of "did scroll" IPC messages, and would need to scroll content that is very slow to
update. scroll events can't be used as a signal for how many scroll updates the web process
receives.
* Source/WebCore/page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::hasPendingScrollUpdates):
* Source/WebCore/page/scrolling/ScrollingTree.h:
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeDidScroll):
(WebKit::RemoteScrollingCoordinatorProxy::sendScrollingTreeNodeDidScroll):
(WebKit::RemoteScrollingCoordinatorProxy::receivedLastScrollingTreeNodeDidScrollReply):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.h:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.messages.in:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.mm:
(WebKit::RemoteScrollingCoordinator::scrollPositionChangedForNode):
Canonical link: https://commits.webkit.org/253015@main
Canonical link: https://commits.webkit.org/252432.464@safari-7614.2.9.0-branch
Commit: d9405d361f4883c0c160d3b154047b941627801d
https://github.com/WebKit/WebKit/commit/d9405d361f4883c0c160d3b154047b941627801d
Author: Alan Coon <alancoon at apple.com>
Date: 2022-09-23 (Fri, 23 Sep 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.2
Canonical link: https://commits.webkit.org/252432.465@safari-7614.2.9.0-branch
Commit: bf0349b42dcf577d7009ec999dabbeff87f22065
https://github.com/WebKit/WebKit/commit/bf0349b42dcf577d7009ec999dabbeff87f22065
Author: Wenson Hsieh <wenson_hsieh at apple.com>
Date: 2022-09-23 (Fri, 23 Sep 2022)
Changed paths:
M Source/WebCore/html/HTMLAttachmentElement.cpp
M Source/WebCore/html/HTMLAttachmentElement.h
M Source/WebCore/html/HTMLImageElement.cpp
M Source/WebCore/html/HTMLImageElement.h
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm
Log Message:
-----------
Cherry-pick 47fb3d640ece. rdar://problem/98012376
[Mail Compose] Attachment goes missing after wrapping an image in a block quote
https://bugs.webkit.org/show_bug.cgi?id=245432
rdar://98012376
Reviewed by Ryosuke Niwa.
After duplicating an existing attachment-backed image element in the DOM using `cloneNode()` (or
similar DOM functions), `HTMLImageElement.attachmentIdentifier` returns the old attachment
identifier of the cloned attachment rather than the identifier of the clone. This breaks Mail's
bookkeepping around attachment data in Mail compose, and leads to the attachment being lost upon
sending or saving a draft.
This happens because:
1. `HTMLImageElement` has an internal mechanism for keeping track of the attachment ID of the
attachment-backed image it was cloned from, by storing the ID in `m_pendingClonedAttachmentID` and
returning it when asked for the `attachmentIdentifier`, even if the attachment element hasn't been
created yet. This is used to ensure that after cloning an attachment element, removing the original,
and inserting the clone, the cloned attachment-backed image will preserve the unique attachment ID
of the attachment-backed image it was cloned from.
2. `Document` has logic to maintain the invariant that no two attachment elements that are connected
to it ever have the same unique identifier; to do this, we automatically adjust the identifier of
an attachment element upon insertion into the DOM, if the ID collides with that of an existing
attachment in the DOM.
In this bug, (2) adjusts the unique ID of the attachment underneath the image, but the image still
has a `m_pendingClonedAttachmentID` that points to the old ID, creating an inconsistency. To fix
this, we add a mechanism to invalidate the pending cloned attachment ID when the ID of the
attachment under an attachment-backed image changes.
Test: WKAttachmentTests.DuplicateImageWithAttachment
* Source/WebCore/html/HTMLAttachmentElement.cpp:
(WebCore::HTMLAttachmentElement::setUniqueIdentifier):
Move the definition out of line into the implementation so that we can call into `HTMLImageElement`.
* Source/WebCore/html/HTMLAttachmentElement.h:
* Source/WebCore/html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::didUpdateAttachmentIdentifier):
Clear out the `m_pendingClonedAttachmentID`.
* Source/WebCore/html/HTMLImageElement.h:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
Canonical link: https://commits.webkit.org/254696@main
Canonical link: https://commits.webkit.org/252432.466@safari-7614.2.9.0-branch
Commit: c1b2bd2185ae961c9f15ad6449d72e2b280cbe85
https://github.com/WebKit/WebKit/commit/c1b2bd2185ae961c9f15ad6449d72e2b280cbe85
Author: Alex Christensen <achristensen at webkit.org>
Date: 2022-09-23 (Fri, 23 Sep 2022)
Changed paths:
M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm
Log Message:
-----------
Cherry-pick 71af797599da. rdar://problem/99699584
Revert rdar://98432266
https://bugs.webkit.org/show_bug.cgi?id=245548
<rdar://99699584>
Reviewed by Per Arne Vollan.
* Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
(WebKit::WebsiteDataStoreConfiguration::initializePaths):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
Canonical link: https://commits.webkit.org/254775@main
Canonical link: https://commits.webkit.org/252432.467@safari-7614.2.9.0-branch
Commit: 1ed464fbc1544fca5c27b58daa3d861cfe968b27
https://github.com/WebKit/WebKit/commit/1ed464fbc1544fca5c27b58daa3d861cfe968b27
Author: Alan Coon <alancoon at apple.com>
Date: 2022-09-26 (Mon, 26 Sep 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.3
Canonical link: https://commits.webkit.org/252432.468@safari-7614.2.9.0-branch
Commit: 8e363bdfb0bdd6125bfa2a559751ff9eab8cd683
https://github.com/WebKit/WebKit/commit/8e363bdfb0bdd6125bfa2a559751ff9eab8cd683
Author: Alan Coon <alancoon at apple.com>
Date: 2022-09-27 (Tue, 27 Sep 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.4
Canonical link: https://commits.webkit.org/252432.469@safari-7614.2.9.0-branch
Commit: 77b2bee57486dd36a3aaef3de2428a50551db262
https://github.com/WebKit/WebKit/commit/77b2bee57486dd36a3aaef3de2428a50551db262
Author: Jer Noble <jer.noble at apple.com>
Date: 2022-09-27 (Tue, 27 Sep 2022)
Changed paths:
M Source/WebCore/html/HTMLMediaElement.cpp
M Source/WebCore/page/Quirks.cpp
M Source/WebCore/page/Quirks.h
Log Message:
-----------
Cherry-pick 249fdd9c0f8b. rdar://problem/100199996
Hulu.com content is stretched when moving to next episode
https://bugs.webkit.org/show_bug.cgi?id=245641
<rdar://100199996>
Reviewed by Eric Carlson.
As a prelude: at some point, WebKit fixed a bug where the `object-fit` CSS property was not honored
if set before media began loading in a HTMLVideoElement. Hulu.com sets it's video element's
`object-fit:` style to `fill`. When Hulu.com navigates to the next episode in a playlist, it resets
the <video>'s `width:` and `height:` style to 100%, causing the video to stretch visibly. Previous
to the mentioned fix, this bug would "hide" this behavior, by causing the renderer to ignore `fill`
and default to `contain`.
Add a quirk for Hulu.com that reverts to the previous (broken) behavior.
* Source/WebCore/html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::updateMediaPlayer):
* Source/WebCore/page/Quirks.cpp:
(WebCore::Quirks::needsVideoShouldMaintainAspectRatioQuirk const):
* Source/WebCore/page/Quirks.h:
Canonical link: https://commits.webkit.org/254848@main
Canonical link: https://commits.webkit.org/252432.470@safari-7614.2.9.0-branch
Commit: 4bc11d29b07e3a7130d6837946723fb60473f24c
https://github.com/WebKit/WebKit/commit/4bc11d29b07e3a7130d6837946723fb60473f24c
Author: Commit Queue <commit-queue at webkit.org>
Date: 2022-09-27 (Tue, 27 Sep 2022)
Changed paths:
M Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in
Log Message:
-----------
Cherry-pick ede5c50d642c. rdar://problem/100268238
Unreviewed, reverting r253111 at main.
https://bugs.webkit.org/show_bug.cgi?id=245683
Introduced crash
Reverted changeset:
"[iOS][WP] Update sandbox message filter"
https://bugs.webkit.org/show_bug.cgi?id=243533
https://commits.webkit.org/253111@main
Canonical link: https://commits.webkit.org/254870@main
Canonical link: https://commits.webkit.org/252432.471@safari-7614.2.9.0-branch
Commit: 68e20a0e22ee0dd2e40a70a3b439b99fce8f60da
https://github.com/WebKit/WebKit/commit/68e20a0e22ee0dd2e40a70a3b439b99fce8f60da
Author: Alan Coon <alancoon at apple.com>
Date: 2022-09-28 (Wed, 28 Sep 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.5
Canonical link: https://commits.webkit.org/252432.472@safari-7614.2.9.0-branch
Commit: 246120aa44d74a24959fb80460a620ce0c55680a
https://github.com/WebKit/WebKit/commit/246120aa44d74a24959fb80460a620ce0c55680a
Author: Alan Coon <alancoon at apple.com>
Date: 2022-09-29 (Thu, 29 Sep 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.6
Canonical link: https://commits.webkit.org/252432.473@safari-7614.2.9.0-branch
Commit: f864944189322e4892f0eaf2557af0b8b62c9372
https://github.com/WebKit/WebKit/commit/f864944189322e4892f0eaf2557af0b8b62c9372
Author: Youenn Fablet <youennf at gmail.com>
Date: 2022-09-29 (Thu, 29 Sep 2022)
Changed paths:
A LayoutTests/http/wpt/service-workers/fetch-service-worker-navigation-preload.https-expected.txt
A LayoutTests/http/wpt/service-workers/fetch-service-worker-navigation-preload.https.html
M LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-worker.js
M LayoutTests/http/wpt/service-workers/resources/fetch-service-worker-preload-script.py
M Source/WebCore/Modules/fetch/FetchResponse.cpp
M Source/WebCore/Modules/fetch/FetchResponse.h
M Source/WebCore/workers/service/FetchEvent.cpp
M Source/WebCore/workers/service/context/ServiceWorkerFetch.cpp
M Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp
Log Message:
-----------
Cherry-pick 757903c6fe5a. rdar://problem/98144044
FetchEvent should not start its navigation preload response load if the preload was already used
https://bugs.webkit.org/show_bug.cgi?id=245788
rdar://98144044
Reviewed by Alex Christensen.
Creating the navigation preload promise was scheduling a load which is hitting the network if the preload is no longer in network process.
This case happens if the navigation preload promise is actually used in respondWith.
To circumvent this issue, we do not trigger the load if the preload is used in respondWith.
Add logs to capture the fact that a load is not getting its expected preload.
Drive-by fixes to actually use the current preload request and not the loader original request.
This might change in case of redirections.
Covered by newly added test which mirrors what we were testing for non-exposed navigation preloads.
* LayoutTests/http/wpt/service-workers/fetch-service-worker-navigation-preload.https-expected.txt: Added.
* LayoutTests/http/wpt/service-workers/fetch-service-worker-navigation-preload.https.html: Added.
* LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-worker.js:
(event.event.request.url.includes):
* LayoutTests/http/wpt/service-workers/resources/fetch-service-worker-preload-script.py:
(main):
* Source/WebCore/Modules/fetch/FetchResponse.cpp:
(WebCore::FetchResponse::markAsUsedForPreload):
(WebCore::FetchResponse::markAsDisturbed): Deleted.
* Source/WebCore/Modules/fetch/FetchResponse.h:
* Source/WebCore/workers/service/FetchEvent.cpp:
(WebCore::FetchEvent::navigationPreloadIsReady):
* Source/WebCore/workers/service/context/ServiceWorkerFetch.cpp:
(WebCore::ServiceWorkerFetch::processResponse):
* Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
(WebKit::ServiceWorkerFetchTask::fromNavigationPreloader):
(WebKit::ServiceWorkerFetchTask::ServiceWorkerFetchTask):
(WebKit::ServiceWorkerFetchTask::loadBodyFromPreloader):
Canonical link: https://commits.webkit.org/254992@main
Canonical link: https://commits.webkit.org/252432.474@safari-7614.2.9.0-branch
Commit: 64e7c5fc1da2d1778722d2fc77a062ff18b34a82
https://github.com/WebKit/WebKit/commit/64e7c5fc1da2d1778722d2fc77a062ff18b34a82
Author: Alan Coon <alancoon at apple.com>
Date: 2022-09-30 (Fri, 30 Sep 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.7
Canonical link: https://commits.webkit.org/252432.475@safari-7614.2.9.0-branch
Commit: 23e2b07ed8aa30d13aa3b5ff011f9e572ce08fc9
https://github.com/WebKit/WebKit/commit/23e2b07ed8aa30d13aa3b5ff011f9e572ce08fc9
Author: Chris Dumez <cdumez at apple.com>
Date: 2022-09-30 (Fri, 30 Sep 2022)
Changed paths:
A LayoutTests/fast/history/history-replace-updates-current-item-expected.txt
A LayoutTests/fast/history/history-replace-updates-current-item.html
A LayoutTests/fast/history/resources/history-replace-updates-current-item-done.html
A LayoutTests/fast/history/resources/history-replace-updates-current-item-goback.html
M LayoutTests/fast/loader/stateobjects/pushstate-frequency-iframe.html
M LayoutTests/fast/loader/stateobjects/pushstate-frequency.html
M LayoutTests/fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange-expected.txt
M LayoutTests/fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange.html
M LayoutTests/fast/loader/stateobjects/replacestate-frequency-iframe.html
M LayoutTests/fast/loader/stateobjects/replacestate-frequency.html
M LayoutTests/fast/loader/stateobjects/resources/pushstate-iframe.html
M LayoutTests/fast/loader/stateobjects/resources/replacestate-iframe.html
M LayoutTests/fast/loader/stateobjects/state-url-sets-links-visited.html
R LayoutTests/http/tests/history/history-replace-updates-current-item-expected.txt
R LayoutTests/http/tests/history/history-replace-updates-current-item.html
R LayoutTests/http/tests/history/resources/history-replace-updates-current-item-done.html
R LayoutTests/http/tests/history/resources/history-replace-updates-current-item-goback.html
M LayoutTests/loader/stateobjects/pushstate-size-iframe.html
M LayoutTests/loader/stateobjects/pushstate-size.html
M LayoutTests/loader/stateobjects/replacestate-size-iframe.html
M LayoutTests/loader/stateobjects/replacestate-size.html
M LayoutTests/loader/stateobjects/resources/pushstate-iframe.html
M LayoutTests/loader/stateobjects/resources/replacestate-iframe.html
M LayoutTests/platform/wk2/TestExpectations
M LayoutTests/swipe/pushState-cached-back-swipe.html
M LayoutTests/swipe/pushState-programmatic-back-while-swiping-crash.html
M Source/WebCore/page/History.cpp
M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp
M Source/WebKit/UIProcess/ProvisionalPageProxy.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/WebProcessProxy.cpp
M Source/WebKit/UIProcess/WebProcessProxy.h
M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
M Tools/TestWebKitAPI/Tests/WebKit/ProvisionalURLAfterWillSendRequestCallback.cpp
M Tools/TestWebKitAPI/Tests/WebKit/ProvisionalURLAfterWillSendRequestCallback_Bundle.cpp
Log Message:
-----------
Cherry-pick 7e840610aa3a. rdar://problem/100225581
Revert [254005 at main] Validate item URL in BackForwardAddItem() IPC
https://bugs.webkit.org/show_bug.cgi?id=244620
<rdar://100225581>
Unreviewed, revert 254005 at main since it because the MySubaru app to hang on launch.
* LayoutTests/fast/history/history-replace-updates-current-item-expected.txt: Added.
* LayoutTests/fast/history/history-replace-updates-current-item.html: Renamed from LayoutTests/http/tests/history/history-replace-updates-current-item.html.
* LayoutTests/fast/history/resources/history-replace-updates-current-item-done.html: Renamed from LayoutTests/http/tests/history/resources/history-replace-updates-current-item-done.html.
* LayoutTests/fast/history/resources/history-replace-updates-current-item-goback.html: Renamed from LayoutTests/http/tests/history/resources/history-replace-updates-current-item-goback.html.
* LayoutTests/fast/loader/stateobjects/pushstate-frequency-iframe.html:
* LayoutTests/fast/loader/stateobjects/pushstate-frequency.html:
* LayoutTests/fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange-expected.txt:
* LayoutTests/fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange.html:
* LayoutTests/fast/loader/stateobjects/replacestate-frequency-iframe.html:
* LayoutTests/fast/loader/stateobjects/replacestate-frequency.html:
* LayoutTests/fast/loader/stateobjects/resources/pushstate-iframe.html:
* LayoutTests/fast/loader/stateobjects/resources/replacestate-iframe.html:
* LayoutTests/fast/loader/stateobjects/state-url-sets-links-visited.html:
* LayoutTests/http/tests/history/history-replace-updates-current-item-expected.txt: Removed.
* LayoutTests/loader/stateobjects/pushstate-size-iframe.html:
* LayoutTests/loader/stateobjects/pushstate-size.html:
* LayoutTests/loader/stateobjects/replacestate-size-iframe.html:
* LayoutTests/loader/stateobjects/replacestate-size.html:
* LayoutTests/loader/stateobjects/resources/pushstate-iframe.html:
* LayoutTests/loader/stateobjects/resources/replacestate-iframe.html:
* LayoutTests/platform/wk2/TestExpectations:
* LayoutTests/swipe/pushState-cached-back-swipe.html:
* LayoutTests/swipe/pushState-programmatic-back-while-swiping-crash.html:
* Source/WebCore/page/History.cpp:
(WebCore::History::stateObjectAdded):
* Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::didReceiveMessage):
(WebKit::ProvisionalPageProxy::backForwardAddItem): Deleted.
* Source/WebKit/UIProcess/ProvisionalPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadAlternateHTML):
(WebKit::WebPageProxy::continueNavigationInNewProcess):
(WebKit::WebPageProxy::decidePolicyForNavigationActionAsyncShared):
(WebKit::WebPageProxy::backForwardAddItem):
(WebKit::WebPageProxy::backForwardAddItemShared): Deleted.
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::setIsInProcessCache):
(WebKit::WebProcessProxy::addPreviouslyApprovedFileURL): Deleted.
(WebKit::WebProcessProxy::wasPreviouslyApprovedFileURL const): Deleted.
* Source/WebKit/UIProcess/WebProcessProxy.h:
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/WebKit/ProvisionalURLAfterWillSendRequestCallback.cpp:
(TestWebKitAPI::didCommitNavigationCallback):
* Tools/TestWebKitAPI/Tests/WebKit/ProvisionalURLAfterWillSendRequestCallback_Bundle.cpp:
(TestWebKitAPI::ProvisionalURLAfterWillSendRequestCallbackTest::willSendRequestForFrame):
Canonical link: https://commits.webkit.org/255005@main
Canonical link: https://commits.webkit.org/252432.476@safari-7614.2.9.0-branch
Commit: 2537a13b9caf0f4c1999d6fd7e71d19468d4bcdc
https://github.com/WebKit/WebKit/commit/2537a13b9caf0f4c1999d6fd7e71d19468d4bcdc
Author: Jer Noble <jer.noble at apple.com>
Date: 2022-09-30 (Fri, 30 Sep 2022)
Changed paths:
M Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm
Log Message:
-----------
Cherry-pick f235928df8cf. rdar://problem/98839882
Return from PiP to Element Fullscreen Animation breaks sometimes
https://bugs.webkit.org/show_bug.cgi?id=245890
<rdar://98839882>
Reviewed by Eric Carlson.
When entering picture-in-picture from "element" fullscreen (as opposed to "video" i.e. "AVKit" fullscreen) tapping the "return" button in the PiP window will re-enter fullscreen. But because this operation may take a while (re-layout of a heavy page like youtube.com can take upwards of 500ms), WebKit performs a four-part transition: 1, enter AVKit fullscreen mode with blank content; 2, exit PiP into the AVKit fullscreen presentation; 3, enter "element" fullscreen mode behind AVKit's fullscreen presentation; 4, exit AKit fullscreen _into_ the "element" fullscreen presentation.
When this bug occurs, it appears that in step 3, the "element" fullscreen presentation happens _on top_ of the AVKit fullscreen presentation rather than below.
To mitigate this animation issue, disable the "element" fullscreen presentation animation when transitining to fullcreen from PiP mode.
* Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm:
(-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]):
Canonical link: https://commits.webkit.org/255041@main
Canonical link: https://commits.webkit.org/252432.477@safari-7614.2.9.0-branch
Commit: 719fc6bab14de16a857d8c5ab67f7a5ec58916ec
https://github.com/WebKit/WebKit/commit/719fc6bab14de16a857d8c5ab67f7a5ec58916ec
Author: Alan Coon <alancoon at apple.com>
Date: 2022-10-03 (Mon, 03 Oct 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.8
Canonical link: https://commits.webkit.org/252432.478@safari-7614.2.9.0-branch
Commit: 31ace8752936e6aeaaed8063cad13f8c2178eaf3
https://github.com/WebKit/WebKit/commit/31ace8752936e6aeaaed8063cad13f8c2178eaf3
Author: Alan Coon <alancoon at apple.com>
Date: 2022-10-14 (Fri, 14 Oct 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.9
Canonical link: https://commits.webkit.org/252432.479@safari-7614.2.9.0-branch
Commit: c16486c663bbb535d44dcd28f9a47acb331df47d
https://github.com/WebKit/WebKit/commit/c16486c663bbb535d44dcd28f9a47acb331df47d
Author: Alan Coon <alancoon at apple.com>
Date: 2022-10-17 (Mon, 17 Oct 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.10
Canonical link: https://commits.webkit.org/252432.480@safari-7614.2.9.0-branch
Commit: d81f16c5eeec5b5a36c426b984dc9e780b0dafb9
https://github.com/WebKit/WebKit/commit/d81f16c5eeec5b5a36c426b984dc9e780b0dafb9
Author: Alan Coon <alancoon at apple.com>
Date: 2022-10-17 (Mon, 17 Oct 2022)
Changed paths:
M Source/WebCore/rendering/RenderImage.cpp
Log Message:
-----------
Apply patch. rdar://problem/101205947
Canonical link: https://commits.webkit.org/252432.481@safari-7614.2.9.0-branch
Commit: 71997c12ad2474a8776cfcf39928aeab1550d3f5
https://github.com/WebKit/WebKit/commit/71997c12ad2474a8776cfcf39928aeab1550d3f5
Author: Alan Coon <alancoon at apple.com>
Date: 2022-11-23 (Wed, 23 Nov 2022)
Changed paths:
M Source/JavaScriptCore/Configurations/Version.xcconfig
M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
M Source/WebCore/Configurations/Version.xcconfig
M Source/WebCore/PAL/Configurations/Version.xcconfig
M Source/WebGPU/Configurations/Version.xcconfig
M Source/WebInspectorUI/Configurations/Version.xcconfig
M Source/WebKit/Configurations/Version.xcconfig
M Source/WebKitLegacy/mac/Configurations/Version.xcconfig
Log Message:
-----------
Versioning.
WebKit-7614.2.9.0.11
Canonical link: https://commits.webkit.org/252432.482@safari-7614.2.9.0-branch
Commit: 8144ce30be532790b0a436a6464dbaf76dfd6213
https://github.com/WebKit/WebKit/commit/8144ce30be532790b0a436a6464dbaf76dfd6213
Author: Mark Lam <mark.lam at apple.com>
Date: 2022-11-23 (Wed, 23 Nov 2022)
Changed paths:
A JSTests/stress/speculate-real-number-in-object-is.js
M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
Log Message:
-----------
Cherry-pick 71cdc1c09ef1. rdar://problem/102531234
The provenType filtering in FTL's speculateRealNumber is incorrect.
https://bugs.webkit.org/show_bug.cgi?id=248266
<rdar://problem/102531234>
Reviewed by Justin Michaud.
speculateRealNumber does a doubleEqual compare, which filters out double values which
are not NaN. NaN values will fall through to the `intCase` block. In the `intCase` block,
the isNotInt32() check there was given a proven type that wrongly filters out ~SpecFullDouble.
Consider a scenario where the edge was proven to be { SpecInt32Only, SpecDoubleReal,
SpecDoublePureNaN }. SpecFullDouble is defined as SpecDoubleReal | SpecDoubleNaN, and
SpecDoubleNaN is defined as SpecDoublePureNaN | SpecDoubleImpureNaN. Hence, the filtering
of the proven type with ~SpecFullDouble means that isNotInt32() will effectively be given
a proven type of
{ SpecInt32Only, SpecDoubleReal, SpecDoublePureNaN } - { SpecDoubleReal, SpecDoublePureNaN }
which yields
{ SpecInt32Only }.
As a result, the compiler will think that that isNotIn32() check will always fail. This
is not correct if the actual incoming value for that edge is actually a PureNaN. In this
case, speculateRealNumber should have OSR exited, but it doesn't because it thinks that
the isNotInt32() check will always fail and elide the check altogether.
In this patch, we fix this by replacing the ~SpecFullDouble with ~SpecDoubleReal. We also
rename the `intCase` block to `intOrNaNCase` to document what it actually handles.
* JSTests/stress/speculate-real-number-in-object-is.js: Added.
(test.object_is_opt):
(test):
* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
Canonical link: https://commits.webkit.org/252432.839@safari-7614-branch
Canonical link: https://commits.webkit.org/252432.483@safari-7614.2.9.0-branch
Compare: https://github.com/WebKit/WebKit/compare/0043fb534cfa%5E...8144ce30be53
More information about the webkit-changes
mailing list