[webkit-changes] [286483] trunk/Source/WebKit
Title: [286483] trunk/Source/WebKit Revision 286483 Author timothy_hor...@apple.com Date 2021-12-02 23:25:20 -0800 (Thu, 02 Dec 2021) Log Message MomentumEventDispatcher curve sometimes doesn't match the system curve https://bugs.webkit.org/show_bug.cgi?id=233801 Reviewed by Simon Fraser. Three small changes to get us closer to the system curve: 1) Fetch the momentum event dispatch interval from the system, and use it to scale the momentum start event's delta (which we use as our initial velocity) into the "ideal" curve's frame rate (which is always 60fps regardless). 2) Back-date the animation start time to the fingers-down phase end event, so that the momentum start phase has a delta. This seems to match what the system does. 3) Switch to MonotonicTime for the animation time, since it doesn't need to be in the same timebase as events (which are oddly in WallTime), and certainly should be monotonic. * Shared/ScrollingAccelerationCurve.cpp: (WebKit::ScrollingAccelerationCurve::ScrollingAccelerationCurve): (WebKit::ScrollingAccelerationCurve::interpolate): (WebKit::ScrollingAccelerationCurve::encode const): (WebKit::ScrollingAccelerationCurve::decode): (WebKit::operator<<): * Shared/ScrollingAccelerationCurve.h: (WebKit::ScrollingAccelerationCurve::frameRate): (WebKit::ScrollingAccelerationCurve::operator== const): * Shared/mac/ScrollingAccelerationCurveMac.mm: (WebKit::fromIOHIDCurve): (WebKit::fromIOHIDCurveArrayWithAcceleration): (WebKit::fromIOHIDDevice): Fetch and propagate the dispatch frame rate. This isn't *really* a ScrollingAccelerationCurve property, but neither is `resolution`; this is just currently the only place we look up HID properties and push them to the Web Content process; some re-architecture is warranted here in the future. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::handleWheelEvent): Keep track of the last fingers-down phase ended event timestamp. (WebKit::MomentumEventDispatcher::didStartMomentumPhase): Backdate the start time so that the first event has the appropriate delta. Divide out the dispatch frame rate so that the initial velocity is as if the curve were running at 60fps (since we *will* run it at 60fps and interpolate). (WebKit::MomentumEventDispatcher::didEndMomentumPhase): (WebKit::MomentumEventDispatcher::consumeDeltaForTime): (WebKit::MomentumEventDispatcher::displayWasRefreshed): Factor the consume-a-delta-from-the-ideal-curve code out from displayWasRefreshed so we can use it in the start phase too. (WebKit::MomentumEventDispatcher::offsetAtTime): (WebKit::MomentumEventDispatcher::computeNextDelta): Rename idealCurveFrameRate->idealCurveFrameInterval for accuracy. * WebProcess/WebPage/MomentumEventDispatcher.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/ScrollingAccelerationCurve.cpp trunk/Source/WebKit/Shared/ScrollingAccelerationCurve.h trunk/Source/WebKit/Shared/mac/ScrollingAccelerationCurveMac.mm trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: trunk/Source/WebKit/ChangeLog (286482 => 286483) --- trunk/Source/WebKit/ChangeLog 2021-12-03 06:39:14 UTC (rev 286482) +++ trunk/Source/WebKit/ChangeLog 2021-12-03 07:25:20 UTC (rev 286483) @@ -1,3 +1,66 @@ +2021-12-02 Tim Horton + +MomentumEventDispatcher curve sometimes doesn't match the system curve +https://bugs.webkit.org/show_bug.cgi?id=233801 + + +Reviewed by Simon Fraser. + +Three small changes to get us closer to the system curve: + +1) Fetch the momentum event dispatch interval from the system, and use +it to scale the momentum start event's delta (which we use as our +initial velocity) into the "ideal" curve's frame rate (which is always +60fps regardless). + +2) Back-date the animation start time to the fingers-down phase end event, +so that the momentum start phase has a delta. This seems to match what +the system does. + +3) Switch to MonotonicTime for the animation time, since it doesn't need +to be in the same timebase as events (which are oddly in WallTime), and +certainly should be monotonic. + +* Shared/ScrollingAccelerationCurve.cpp: +(WebKit::ScrollingAccelerationCurve::ScrollingAccelerationCurve): +(WebKit::ScrollingAccelerationCurve::interpolate): +(WebKit::ScrollingAccelerationCurve::encode const): +(WebKit::ScrollingAccelerationCurve::decode): +(WebKit::operator<<): +* Shared/ScrollingAccelerationCurve.h: +(WebKit::ScrollingAccelerationCurve::frameRate): +(WebKit::ScrollingAccelerationCurve::operator== const): +* Shared/mac/ScrollingAccelerationCurveMac.mm: +(WebKit::fromIOHIDCurve): +(WebKit::fromIOHIDCurveArrayWithAcceleration): +(WebKit::fromIOHIDDevice): +Fetch and
[webkit-changes] [286482] trunk
Title: [286482] trunk Revision 286482 Author cdu...@apple.com Date 2021-12-02 22:39:14 -0800 (Thu, 02 Dec 2021) Log Message html/semantics/forms/constraints/form-validation-validity-valid.html WPT test is failing https://bugs.webkit.org/show_bug.cgi?id=233778 Reviewed by Darin Adler. LayoutTests/imported/w3c: Rebaseline WPT tests now that more checks are passing. * web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt: Source/WebCore: html/semantics/forms/constraints/form-validation-validity-valid.html WPT test is failing in WebKit but passing in Blink & Gecko. The issue was caused by incorrect willValidate() checks inside HTMLInputElement::isValid() & HTMLSelectElement::valueMissing(). No new tests, rebaselined existing tests. * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::isValid const): * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::valueMissing const): LayoutTests: Rebaseline WPT tests now that more checks are passing. * platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt: * platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/forms/ValidityState-valueMissing-003-expected.txt trunk/LayoutTests/fast/forms/ValidityState-valueMissing-003.html trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt trunk/LayoutTests/platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt trunk/LayoutTests/platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLInputElement.cpp trunk/Source/WebCore/html/HTMLSelectElement.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286481 => 286482) --- trunk/LayoutTests/ChangeLog 2021-12-03 06:05:49 UTC (rev 286481) +++ trunk/LayoutTests/ChangeLog 2021-12-03 06:39:14 UTC (rev 286482) @@ -1,3 +1,15 @@ +2021-12-02 Chris Dumez + +html/semantics/forms/constraints/form-validation-validity-valid.html WPT test is failing +https://bugs.webkit.org/show_bug.cgi?id=233778 + +Reviewed by Darin Adler. + +Rebaseline WPT tests now that more checks are passing. + +* platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt: +* platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: + 2021-12-02 Arcady Goldmints-Orlov [GLIB] Update test expectations and baselines. Unreviewed test gardening. Modified: trunk/LayoutTests/fast/forms/ValidityState-valueMissing-003-expected.txt (286481 => 286482) --- trunk/LayoutTests/fast/forms/ValidityState-valueMissing-003-expected.txt 2021-12-03 06:05:49 UTC (rev 286481) +++ trunk/LayoutTests/fast/forms/ValidityState-valueMissing-003-expected.txt 2021-12-03 06:39:14 UTC (rev 286482) @@ -5,15 +5,15 @@ PASS valueMissingFor("input") is false PASS valueMissingFor("textarea") is false -PASS valueMissingFor("select-no-option") is false -PASS valueMissingFor("select-placeholder-selected") is false +PASS valueMissingFor("select-no-option") is true +PASS valueMissingFor("select-placeholder-selected") is true PASS valueMissingFor("select-without-placeholder") is false PASS valueMissingFor("select-placeholder-selected-size2") is false PASS valueMissingFor("select-without-placeholder-size2") is false -PASS valueMissingFor("select-none-selected-multiple") is false +PASS valueMissingFor("select-none-selected-multiple") is true PASS valueMissingFor("select-fake-placeholder-selected-multiple") is false PASS valueMissingFor("select-without-fake-placeholder-multiple") is false -PASS valueMissingFor("select-none-selected-size2-multiple") is false +PASS valueMissingFor("select-none-selected-size2-multiple") is true PASS valueMissingFor("select-fake-placeholder-selected-size2-multiple") is false PASS valueMissingFor("select-without-fake-placeholder-size2-multiple") is false PASS successfullyParsed is true Modified: trunk/LayoutTests/fast/forms/ValidityState-valueMissing-003.html (286481 => 286482) ---
[webkit-changes] [286481] trunk/Source
Title: [286481] trunk/Source Revision 286481 Author simon.fra...@apple.com Date 2021-12-02 22:05:49 -0800 (Thu, 02 Dec 2021) Log Message A Safari tab can rarely get stuck in a state where rendering updates stop happening https://bugs.webkit.org/show_bug.cgi?id=233784 rdar://85445072 Reviewed by Chris Dumez. Sometimes a Safari tab can get into a state where rendering updates cease to happen, which manifests as partially broken scrolling, blank tiles revealed when scrolling, and somewhat broken page updates. I was able to sometimes reproduce this by clicking on links in eBay emails from Mail on a system with two displays. >From the one time I reproduce with logging, the output indicated that DisplayRefreshMonitor::displayLinkFired() would early return because isPreviousFrameDone() was false. The only way for that to occur, barring memory corruption, is if DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() returned early, which it does if the callback comes twice in a single event loop; this may explain the rarity. So fix DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() call setIsPreviousFrameDone(true) so the next callback can make progress Also add some locking annotations and fix one missing lock, and some release logging. Source/WebCore: * platform/graphics/DisplayRefreshMonitor.cpp: (WebCore::DisplayRefreshMonitor::stop): (WebCore::DisplayRefreshMonitor::firedAndReachedMaxUnscheduledFireCount): (WebCore::DisplayRefreshMonitor::displayLinkFired): * platform/graphics/DisplayRefreshMonitor.h: (WebCore::DisplayRefreshMonitor::WTF_REQUIRES_LOCK): (WebCore::DisplayRefreshMonitor::WTF_GUARDED_BY_LOCK): (WebCore::DisplayRefreshMonitor::setMaxUnscheduledFireCount): Deleted. (WebCore::DisplayRefreshMonitor::isScheduled const): Deleted. (WebCore::DisplayRefreshMonitor::setIsScheduled): Deleted. (WebCore::DisplayRefreshMonitor::isPreviousFrameDone const): Deleted. (WebCore::DisplayRefreshMonitor::setIsPreviousFrameDone): Deleted. Source/WebKit: * WebProcess/WebPage/mac/DisplayRefreshMonitorMac.cpp: (WebKit::DisplayRefreshMonitorMac::dispatchDisplayDidRefresh): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/DisplayRefreshMonitor.cpp trunk/Source/WebCore/platform/graphics/DisplayRefreshMonitor.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.mm trunk/Source/WebKit/WebProcess/WebPage/mac/DisplayRefreshMonitorMac.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286480 => 286481) --- trunk/Source/WebCore/ChangeLog 2021-12-03 04:49:45 UTC (rev 286480) +++ trunk/Source/WebCore/ChangeLog 2021-12-03 06:05:49 UTC (rev 286481) @@ -1,3 +1,39 @@ +2021-12-02 Simon Fraser + +A Safari tab can rarely get stuck in a state where rendering updates stop happening +https://bugs.webkit.org/show_bug.cgi?id=233784 +rdar://85445072 + +Reviewed by Chris Dumez. + +Sometimes a Safari tab can get into a state where rendering updates cease to happen, +which manifests as partially broken scrolling, blank tiles revealed when scrolling, +and somewhat broken page updates. I was able to sometimes reproduce this by clicking +on links in eBay emails from Mail on a system with two displays. + +From the one time I reproduce with logging, the output indicated that DisplayRefreshMonitor::displayLinkFired() +would early return because isPreviousFrameDone() was false. The only way for that to occur, +barring memory corruption, is if DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() returned early, +which it does if the callback comes twice in a single event loop; this may explain the rarity. + +So fix DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() call setIsPreviousFrameDone(true) +so the next callback can make progress + +Also add some locking annotations and fix one missing lock, and some release logging. + +* platform/graphics/DisplayRefreshMonitor.cpp: +(WebCore::DisplayRefreshMonitor::stop): +(WebCore::DisplayRefreshMonitor::firedAndReachedMaxUnscheduledFireCount): +(WebCore::DisplayRefreshMonitor::displayLinkFired): +* platform/graphics/DisplayRefreshMonitor.h: +(WebCore::DisplayRefreshMonitor::WTF_REQUIRES_LOCK): +(WebCore::DisplayRefreshMonitor::WTF_GUARDED_BY_LOCK): +(WebCore::DisplayRefreshMonitor::setMaxUnscheduledFireCount): Deleted. +(WebCore::DisplayRefreshMonitor::isScheduled const): Deleted. +(WebCore::DisplayRefreshMonitor::setIsScheduled): Deleted. +(WebCore::DisplayRefreshMonitor::isPreviousFrameDone const): Deleted. +(WebCore::DisplayRefreshMonitor::setIsPreviousFrameDone): Deleted. + 2021-12-02 Tyler Wilcock AX: In AccessibilityRenderObject::documentLinks, use existing image-map document links instead of always creating new ones Modified:
[webkit-changes] [286480] trunk/LayoutTests
Title: [286480] trunk/LayoutTests Revision 286480 Author commit-qu...@webkit.org Date 2021-12-02 20:49:45 -0800 (Thu, 02 Dec 2021) Log Message [GLIB] Update test expectations and baselines. Unreviewed test gardening. https://bugs.webkit.org/show_bug.cgi?id=233799 Add a platform specific baseline for imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https.html as the tests pass on GTK and WPE. Patch by Arcady Goldmints-Orlov on 2021-12-02 * platform/glib/TestExpectations: * platform/glib/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/glib/TestExpectations Added Paths trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/ trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (286479 => 286480) --- trunk/LayoutTests/ChangeLog 2021-12-03 04:37:35 UTC (rev 286479) +++ trunk/LayoutTests/ChangeLog 2021-12-03 04:49:45 UTC (rev 286480) @@ -1,3 +1,14 @@ +2021-12-02 Arcady Goldmints-Orlov + +[GLIB] Update test expectations and baselines. Unreviewed test gardening. +https://bugs.webkit.org/show_bug.cgi?id=233799 + +Add a platform specific baseline for imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https.html +as the tests pass on GTK and WPE. + +* platform/glib/TestExpectations: +* platform/glib/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https-expected.txt: Added. + 2021-12-02 Tyler Wilcock AX: In AccessibilityRenderObject::documentLinks, use existing image-map document links instead of always creating new ones Modified: trunk/LayoutTests/platform/glib/TestExpectations (286479 => 286480) --- trunk/LayoutTests/platform/glib/TestExpectations 2021-12-03 04:37:35 UTC (rev 286479) +++ trunk/LayoutTests/platform/glib/TestExpectations 2021-12-03 04:49:45 UTC (rev 286480) @@ -1083,6 +1083,9 @@ webkit.org/b/185254 http/tests/xmlhttprequest/onloadend-event-after-sync-requests.html [ DumpJSConsoleLogInStdErr ] webkit.org/b/185254 http/tests/xmlhttprequest/response-access-on-error.html [ DumpJSConsoleLogInStdErr ] +webkit.org/b/233796 imported/w3c/web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/refresh [ Failure ] +webkit.org/b/233796 imported/w3c/web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/redirect-to-about.window.html [ Failure ] + # # End of SOUP and Networking-related bugs # @@ -1354,6 +1357,8 @@ webkit.org/b/229055 http/wpt/webrtc/sframe-transform-error.html [ Failure ] webkit.org/b/233740 http/wpt/webrtc/video-script-transform-keyframe-only.html [ Failure ] +webkit.org/b/233740 webrtc/vp9-svc.html [ Timeout ] +webkit.org/b/233740 webrtc/vp9.html [ Timeout ] # # End of WebRTC-related bugs Added: trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https-expected.txt (0 => 286480) --- trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https-expected.txt (rev 0) +++ trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/broken-chunked-encoding.https-expected.txt 2021-12-03 04:49:45 UTC (rev 286480) @@ -0,0 +1,5 @@ + + +PASS FetchEvent#preloadResponse resolves even if the body is sent with broken chunked encoding. +PASS FetchEvent#preloadResponse resolves even if the body is sent with broken chunked encoding with some delays + ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286479] trunk/Source/WebKit
Title: [286479] trunk/Source/WebKit Revision 286479 Author cdu...@apple.com Date 2021-12-02 20:37:35 -0800 (Thu, 02 Dec 2021) Log Message Regression(r283179) Google Drive freezes after downloading a folder https://bugs.webkit.org/show_bug.cgi?id=233783 Reviewed by Darin Adler. When process-swapping on a navigation response due to COOP, we create a new ProvisionalPageProxy to trigger a provisional load in a new WebProcess. In the common case, the ProvisionalPageProxy gets committed, we process-swap and everything works fine. However, if the client decides to convert the navigation into a download (like in the Google Drive case), then the ProvisionalPageProxy gets destroyed without being committed. The issue is that the committed process still thinks at this point that it is in the middle of a navigation and its layer tree is thus frozen with reason=PageTransition. This is what makes Google Drive look frozen after the download. This is not an issue with PSON because the process-swap happens in decidePolicyForNavigationAction() and we tell the previous process to ignore the navigation when we process-swap. To address the issue, we now tell the committed process to cancel its navigation if the ProvisionalPageProxy ends up getting destroyed without being committed. This lets the committed process know there is no point in waiting for this navigation to happen and allows it to unfreeze its layer tree. * UIProcess/ProvisionalPageProxy.cpp: (WebKit::ProvisionalPageProxy::ProvisionalPageProxy): (WebKit::ProvisionalPageProxy::~ProvisionalPageProxy): * UIProcess/ProvisionalPageProxy.h: (WebKit::ProvisionalPageProxy::isProcessSwappingOnNavigationResponse const): (WebKit::ProvisionalPageProxy::shouldClosePreviousPageAfterCommit const): Deleted. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::commitProvisionalPage): (WebKit::WebPageProxy::continueNavigationInNewProcess): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp trunk/Source/WebKit/UIProcess/ProvisionalPageProxy.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (286478 => 286479) --- trunk/Source/WebKit/ChangeLog 2021-12-03 04:24:41 UTC (rev 286478) +++ trunk/Source/WebKit/ChangeLog 2021-12-03 04:37:35 UTC (rev 286479) @@ -1,3 +1,37 @@ +2021-12-02 Chris Dumez + +Regression(r283179) Google Drive freezes after downloading a folder +https://bugs.webkit.org/show_bug.cgi?id=233783 + + +Reviewed by Darin Adler. + +When process-swapping on a navigation response due to COOP, we create a new ProvisionalPageProxy +to trigger a provisional load in a new WebProcess. In the common case, the ProvisionalPageProxy +gets committed, we process-swap and everything works fine. However, if the client decides to +convert the navigation into a download (like in the Google Drive case), then the +ProvisionalPageProxy gets destroyed without being committed. The issue is that the committed +process still thinks at this point that it is in the middle of a navigation and its layer +tree is thus frozen with reason=PageTransition. This is what makes Google Drive look frozen +after the download. This is not an issue with PSON because the process-swap happens in +decidePolicyForNavigationAction() and we tell the previous process to ignore the navigation +when we process-swap. + +To address the issue, we now tell the committed process to cancel its navigation if the +ProvisionalPageProxy ends up getting destroyed without being committed. This lets the +committed process know there is no point in waiting for this navigation to happen and allows +it to unfreeze its layer tree. + +* UIProcess/ProvisionalPageProxy.cpp: +(WebKit::ProvisionalPageProxy::ProvisionalPageProxy): +(WebKit::ProvisionalPageProxy::~ProvisionalPageProxy): +* UIProcess/ProvisionalPageProxy.h: +(WebKit::ProvisionalPageProxy::isProcessSwappingOnNavigationResponse const): +(WebKit::ProvisionalPageProxy::shouldClosePreviousPageAfterCommit const): Deleted. +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::commitProvisionalPage): +(WebKit::WebPageProxy::continueNavigationInNewProcess): + 2021-12-02 Rachel Ginsberg Make enum values consisten in ApplicationManifest::Icon::Purpose Modified: trunk/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp (286478 => 286479) --- trunk/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp 2021-12-03 04:24:41 UTC (rev 286478) +++ trunk/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp 2021-12-03 04:37:35 UTC (rev 286479) @@ -58,7 +58,7 @@ #define PROVISIONALPAGEPROXY_RELEASE_LOG(channel, fmt, ...) RELEASE_LOG(channel, "%p - [pageProxyID=%" PRIu64 ", webPageID=%" PRIu64 ", PID=%i, navigationID=%" PRIu64 "] ProvisionalPageProxy::" fmt, this,
[webkit-changes] [286478] trunk
Title: [286478] trunk Revision 286478 Author ysuz...@apple.com Date 2021-12-02 20:24:41 -0800 (Thu, 02 Dec 2021) Log Message [JSC] shell's $.globalObjectFor is not safe for non object cells https://bugs.webkit.org/show_bug.cgi?id=233794 Reviewed by Saam Barati. JSTests: * stress/dollar-global-object.js: Added. Source/_javascript_Core: Only Object cells can have Structures having JSGlobalObject. * jsc.cpp: (JSC_DEFINE_HOST_FUNCTION): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/jsc.cpp Added Paths trunk/JSTests/stress/dollar-global-object.js Diff Modified: trunk/JSTests/ChangeLog (286477 => 286478) --- trunk/JSTests/ChangeLog 2021-12-03 04:17:30 UTC (rev 286477) +++ trunk/JSTests/ChangeLog 2021-12-03 04:24:41 UTC (rev 286478) @@ -1,3 +1,12 @@ +2021-12-02 Yusuke Suzuki + +[JSC] shell's $.globalObjectFor is not safe for non object cells +https://bugs.webkit.org/show_bug.cgi?id=233794 + +Reviewed by Saam Barati. + +* stress/dollar-global-object.js: Added. + 2021-12-02 Saam Barati Fix OOM crash in JSValue::toWTFStringForConsole Added: trunk/JSTests/stress/dollar-global-object.js (0 => 286478) --- trunk/JSTests/stress/dollar-global-object.js (rev 0) +++ trunk/JSTests/stress/dollar-global-object.js 2021-12-03 04:24:41 UTC (rev 286478) @@ -0,0 +1 @@ +$.globalObjectFor("Hey") + "Hey"; Modified: trunk/Source/_javascript_Core/ChangeLog (286477 => 286478) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-03 04:17:30 UTC (rev 286477) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-03 04:24:41 UTC (rev 286478) @@ -1,3 +1,15 @@ +2021-12-02 Yusuke Suzuki + +[JSC] shell's $.globalObjectFor is not safe for non object cells +https://bugs.webkit.org/show_bug.cgi?id=233794 + +Reviewed by Saam Barati. + +Only Object cells can have Structures having JSGlobalObject. + +* jsc.cpp: +(JSC_DEFINE_HOST_FUNCTION): + 2021-12-02 Saam Barati Lower structureHeapAddressSize on more memory limited ARM64 devices Modified: trunk/Source/_javascript_Core/jsc.cpp (286477 => 286478) --- trunk/Source/_javascript_Core/jsc.cpp 2021-12-03 04:17:30 UTC (rev 286477) +++ trunk/Source/_javascript_Core/jsc.cpp 2021-12-03 04:24:41 UTC (rev 286478) @@ -2077,8 +2077,8 @@ if (callFrame->argumentCount() < 1) return JSValue::encode(throwException(globalObject, scope, createError(globalObject, "Not enough arguments"_s))); JSValue arg = callFrame->argument(0); -if (arg.isCell()) -return JSValue::encode(arg.asCell()->structure(vm)->globalObject()->globalThis()); +if (arg.isObject()) +return JSValue::encode(asObject(arg)->globalObject(vm)->globalThis()); return JSValue::encode(jsUndefined()); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286477] trunk
Title: [286477] trunk Revision 286477 Author tyle...@apple.com Date 2021-12-02 20:17:30 -0800 (Thu, 02 Dec 2021) Log Message AX: In AccessibilityRenderObject::documentLinks, use existing image-map document links instead of always creating new ones https://bugs.webkit.org/show_bug.cgi?id=233767 Reviewed by Chris Fleizach. The current implementation of AccessibilityRenderObject::documentLinks always creates new image-map links rather than using the existing ones created via AccessibilityRenderObject::addImageMapChildren. This is problematic for two reasons: 1. It is wasteful in terms of memory usage as we will endlessly accumulate AccessibilityImageMapLink objects in the cache each time AccessibilityRenderObject::documentLinks is called. 2. It breaks `` document links in isolated tree mode, since the objects created this way aren't a child of any other object, and thus don't have any representation in the isolated tree. Concretely, this means AXIsolatedTree::nodeForID never returns anything for these objects. In this patch, we try to find the existing image-map link children in AccessibilityRenderObject::documentLinks before falling back to creating new ones. Source/WebCore: Fixes test accessibility/mac/document-links.html in isolated tree mode. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::documentLinks): Try to find the existing image-map link children before falling back to creating new ones. LayoutTests: * accessibility/mac/document-links-expected.txt: Update expectations based on new variable names. * accessibility/mac/document-links.html: Modernize test and improve variable naming. * resources/accessibility-helper.js: (debugEscaped): Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/accessibility/mac/document-links-expected.txt trunk/LayoutTests/accessibility/mac/document-links.html trunk/LayoutTests/resources/accessibility-helper.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286476 => 286477) --- trunk/LayoutTests/ChangeLog 2021-12-03 03:51:54 UTC (rev 286476) +++ trunk/LayoutTests/ChangeLog 2021-12-03 04:17:30 UTC (rev 286477) @@ -1,3 +1,33 @@ +2021-12-02 Tyler Wilcock + +AX: In AccessibilityRenderObject::documentLinks, use existing image-map document links instead of always creating new ones +https://bugs.webkit.org/show_bug.cgi?id=233767 + +Reviewed by Chris Fleizach. + +The current implementation of AccessibilityRenderObject::documentLinks always +creates new image-map links rather than using the existing ones created via +AccessibilityRenderObject::addImageMapChildren. This is problematic for two reasons: + + 1. It is wasteful in terms of memory usage as we will endlessly accumulate + AccessibilityImageMapLink objects in the cache each time + AccessibilityRenderObject::documentLinks is called. + + 2. It breaks `` document links in isolated tree mode, since the objects created + this way aren't a child of any other object, and thus don't have any representation + in the isolated tree. Concretely, this means AXIsolatedTree::nodeForID never returns + anything for these objects. + +In this patch, we try to find the existing image-map link children +in AccessibilityRenderObject::documentLinks before falling back to creating new ones. + +* accessibility/mac/document-links-expected.txt: +Update expectations based on new variable names. +* accessibility/mac/document-links.html: +Modernize test and improve variable naming. +* resources/accessibility-helper.js: +(debugEscaped): Added. + 2021-12-02 Robert Jenner [ Monterey ] http/tests/workers/service/serviceworker-websocket.https.html (layout-test) is constant text failure Modified: trunk/LayoutTests/accessibility/mac/document-links-expected.txt (286476 => 286477) --- trunk/LayoutTests/accessibility/mac/document-links-expected.txt 2021-12-03 03:51:54 UTC (rev 286476) +++ trunk/LayoutTests/accessibility/mac/document-links-expected.txt 2021-12-03 04:17:30 UTC (rev 286477) @@ -1,5 +1,8 @@ +This test passes if all four links on the page are found. --- +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + AXHasDocumentRoleAncestor: 0 AXHasWebApplicationAncestor: 0 AXRole: AXLink @@ -30,7 +33,7 @@ AXFocusableAncestor: AXEditableAncestor: (null) AXHighestEditableAncestor: (null) -AXURL: http://www.apple.com/ +AXURL: LayoutTests/accessibility/mac/document-links.html#Link1 AXAccessKey: (null) AXLinkRelationshipType: AXElementBusy: 0 @@ -67,7 +70,7 @@ AXFocusableAncestor: AXEditableAncestor: (null) AXHighestEditableAncestor: (null) -AXURL: http://www.apple.com/ +AXURL:
[webkit-changes] [286476] trunk/Tools
Title: [286476] trunk/Tools Revision 286476 Author j...@apple.com Date 2021-12-02 19:51:54 -0800 (Thu, 02 Dec 2021) Log Message Compilation error on Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm https://bugs.webkit.org/show_bug.cgi?id=233797 rdar://problem/86000569 Unreviewed API test build fix. * TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm: Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm Diff Modified: trunk/Tools/ChangeLog (286475 => 286476) --- trunk/Tools/ChangeLog 2021-12-03 03:01:38 UTC (rev 286475) +++ trunk/Tools/ChangeLog 2021-12-03 03:51:54 UTC (rev 286476) @@ -1,3 +1,13 @@ +2021-12-02 Jean-Yves Avenard + +Compilation error on Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm +https://bugs.webkit.org/show_bug.cgi?id=233797 +rdar://problem/86000569 + +Unreviewed API test build fix. + +* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm: + 2021-11-29 Jonathan Bedard [resultsdbpy] Make Python 3.10 compatible Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm (286475 => 286476) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm 2021-12-03 03:01:38 UTC (rev 286475) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm 2021-12-03 03:51:54 UTC (rev 286476) @@ -35,6 +35,7 @@ #import #import #import +#import #import #import ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286475] trunk/Source/WebCore
Title: [286475] trunk/Source/WebCore Revision 286475 Author za...@apple.com Date 2021-12-02 19:01:38 -0800 (Thu, 02 Dec 2021) Log Message [LFC][IFC] Create display boxes for fragmented inline boxes on bidi boundaries https://bugs.webkit.org/show_bug.cgi?id=233736 Reviewed by Antti Koivisto. In this patch we insert inline box type of display boxes in-between bidi display boxes as needed. We don't yet compute visual geometry and/or offset the rest of the content with the injected margins, borders and padding. * layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: (WebCore::Layout::InlineDisplayContentBuilder::insertInlineBoxDisplayBoxForBidiBoundary): (WebCore::Layout::InlineDisplayContentBuilder::processBidiContent): (WebCore::Layout::InlineDisplayContentBuilder::appendInlineBoxDisplayBoxForBidiBoundary): Deleted. * layout/formattingContexts/inline/InlineDisplayContentBuilder.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.h Diff Modified: trunk/Source/WebCore/ChangeLog (286474 => 286475) --- trunk/Source/WebCore/ChangeLog 2021-12-03 02:54:36 UTC (rev 286474) +++ trunk/Source/WebCore/ChangeLog 2021-12-03 03:01:38 UTC (rev 286475) @@ -1,3 +1,19 @@ +2021-12-02 Alan Bujtas + +[LFC][IFC] Create display boxes for fragmented inline boxes on bidi boundaries +https://bugs.webkit.org/show_bug.cgi?id=233736 + +Reviewed by Antti Koivisto. + +In this patch we insert inline box type of display boxes in-between bidi display boxes as needed. +We don't yet compute visual geometry and/or offset the rest of the content with the injected margins, borders and padding. + +* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: +(WebCore::Layout::InlineDisplayContentBuilder::insertInlineBoxDisplayBoxForBidiBoundary): +(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent): +(WebCore::Layout::InlineDisplayContentBuilder::appendInlineBoxDisplayBoxForBidiBoundary): Deleted. +* layout/formattingContexts/inline/InlineDisplayContentBuilder.h: + 2021-12-02 Chris Dumez Introduce a MainThreadBridge class inside WebLockManager Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286474 => 286475) --- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-03 02:54:36 UTC (rev 286474) +++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-03 03:01:38 UTC (rev 286475) @@ -33,6 +33,7 @@ #include "LayoutInitialContainingBlock.h" #include "RuntimeEnabledFeatures.h" #include "TextUtil.h" +#include namespace WebCore { namespace Layout { @@ -269,11 +270,20 @@ setInlineBoxGeometry(layoutBox, inlineBoxBorderBox, false); } -void InlineDisplayContentBuilder::appendInlineBoxDisplayBoxForBidiBoundary(const Box& layoutBox, const InlineRect& inlineBoxRect, DisplayBoxes& boxes) +void InlineDisplayContentBuilder::insertInlineBoxDisplayBoxForBidiBoundary(const InlineLevelBox& inlineBox, const InlineRect& inlineBoxRect, size_t insertionPoint, DisplayBoxes& boxes) { -UNUSED_PARAM(layoutBox); -UNUSED_PARAM(inlineBoxRect); -UNUSED_PARAM(boxes); +ASSERT(inlineBox.isInlineBox()); +// FIXME: Compute ink overflow. +boxes.insert(insertionPoint, { m_lineIndex +, InlineDisplay::Box::Type::NonRootInlineBox +, inlineBox.layoutBox() +, UBIDI_DEFAULT_LTR +, inlineBoxRect +, inlineBoxRect +, { } +, { } +, true +, isFirstLastBox(inlineBox) }); } void InlineDisplayContentBuilder::adjustInlineBoxDisplayBoxForBidiBoundary(InlineDisplay::Box& displayBox, const InlineRect& inlineBoxRect) @@ -340,6 +350,7 @@ { ASSERT(lineContent.visualOrderList.size() == lineContent.runs.size()); +auto needsNonRootInlineBoxDisplayBox = false; auto createDisplayBoxesInVisualOrderForContentRuns = [&] { auto rootInlineBoxRect = lineBox.logicalRectForRootInlineBox(); auto contentRightInVisualOrder = InlineLayoutUnit { }; @@ -358,7 +369,7 @@ auto isContentRun = !lineRun.isInlineBoxStart() && !lineRun.isLineSpanningInlineBoxStart() && !lineRun.isInlineBoxEnd(); if (!isContentRun) { -// FIXME: Add support for inline boxes. +needsNonRootInlineBoxDisplayBox = true; continue; } @@ -397,6 +408,76 @@ } }; createDisplayBoxesInVisualOrderForContentRuns(); + +auto createDisplayBoxesInVisualOrderForInlineBoxes = [&] { +// Visual order could introduce gaps and/or inject runs outside from the current inline box content. +// In such cases, we need to "close" and "open" display boxes for
[webkit-changes] [286474] trunk/Source/WebCore
Title: [286474] trunk/Source/WebCore Revision 286474 Author cdu...@apple.com Date 2021-12-02 18:54:36 -0800 (Thu, 02 Dec 2021) Log Message Introduce a MainThreadBridge class inside WebLockManager https://bugs.webkit.org/show_bug.cgi?id=233789 Reviewed by Darin Adler. Extract all the logic to hop to and back from the main thread out of the WebLockManager and into a MainThreadBridge internal class. This is similar to what was done for BroadcastChannel already. It provides better structuring and slightly better performance by calling isolatedCopy() on the ClientOrigin only once instead of on every call. No new tests, no web-facing behavior change. * Modules/web-locks/WebLockManager.cpp: (WebCore::WebLockManager::MainThreadBridge::create): (WebCore::WebLockManager::MainThreadBridge::MainThreadBridge): (WebCore::WebLockManager::MainThreadBridge::requestLock): (WebCore::WebLockManager::MainThreadBridge::releaseLock): (WebCore::WebLockManager::MainThreadBridge::abortLockRequest): (WebCore::WebLockManager::MainThreadBridge::query): (WebCore::WebLockManager::MainThreadBridge::clientIsGoingAway): (WebCore::WebLockManager::MainThreadBridge::ensureOnMainThread): (WebCore::WebLockManager::WebLockManager): (WebCore::WebLockManager::request): (WebCore::WebLockManager::didCompleteLockRequest): (WebCore::WebLockManager::query): (WebCore::WebLockManager::signalToAbortTheRequest): (WebCore::WebLockManager::clientIsGoingAway): (WebCore::WebLockManager::requestLockOnMainThread): Deleted. (WebCore::WebLockManager::releaseLockOnMainThread): Deleted. (WebCore::WebLockManager::abortLockRequestOnMainThread): Deleted. (WebCore::WebLockManager::queryOnMainThread): Deleted. (WebCore::WebLockManager::ensureOnMainThread): Deleted. * Modules/web-locks/WebLockManager.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/web-locks/WebLockManager.cpp trunk/Source/WebCore/Modules/web-locks/WebLockManager.h Diff Modified: trunk/Source/WebCore/ChangeLog (286473 => 286474) --- trunk/Source/WebCore/ChangeLog 2021-12-03 02:35:49 UTC (rev 286473) +++ trunk/Source/WebCore/ChangeLog 2021-12-03 02:54:36 UTC (rev 286474) @@ -1,3 +1,38 @@ +2021-12-02 Chris Dumez + +Introduce a MainThreadBridge class inside WebLockManager +https://bugs.webkit.org/show_bug.cgi?id=233789 + +Reviewed by Darin Adler. + +Extract all the logic to hop to and back from the main thread out of the WebLockManager and into a MainThreadBridge +internal class. This is similar to what was done for BroadcastChannel already. It provides better structuring and +slightly better performance by calling isolatedCopy() on the ClientOrigin only once instead of on every call. + +No new tests, no web-facing behavior change. + +* Modules/web-locks/WebLockManager.cpp: +(WebCore::WebLockManager::MainThreadBridge::create): +(WebCore::WebLockManager::MainThreadBridge::MainThreadBridge): +(WebCore::WebLockManager::MainThreadBridge::requestLock): +(WebCore::WebLockManager::MainThreadBridge::releaseLock): +(WebCore::WebLockManager::MainThreadBridge::abortLockRequest): +(WebCore::WebLockManager::MainThreadBridge::query): +(WebCore::WebLockManager::MainThreadBridge::clientIsGoingAway): +(WebCore::WebLockManager::MainThreadBridge::ensureOnMainThread): +(WebCore::WebLockManager::WebLockManager): +(WebCore::WebLockManager::request): +(WebCore::WebLockManager::didCompleteLockRequest): +(WebCore::WebLockManager::query): +(WebCore::WebLockManager::signalToAbortTheRequest): +(WebCore::WebLockManager::clientIsGoingAway): +(WebCore::WebLockManager::requestLockOnMainThread): Deleted. +(WebCore::WebLockManager::releaseLockOnMainThread): Deleted. +(WebCore::WebLockManager::abortLockRequestOnMainThread): Deleted. +(WebCore::WebLockManager::queryOnMainThread): Deleted. +(WebCore::WebLockManager::ensureOnMainThread): Deleted. +* Modules/web-locks/WebLockManager.h: + 2021-12-02 Said Abou-Hallawa [GPU Process] Move the FilterEffect boundaries to a new class FilterEffectGeometry Modified: trunk/Source/WebCore/Modules/web-locks/WebLockManager.cpp (286473 => 286474) --- trunk/Source/WebCore/Modules/web-locks/WebLockManager.cpp 2021-12-03 02:35:49 UTC (rev 286473) +++ trunk/Source/WebCore/Modules/web-locks/WebLockManager.cpp 2021-12-03 02:54:36 UTC (rev 286474) @@ -57,7 +57,6 @@ struct WebLockManager::LockRequest { WebLockIdentifier lockIdentifier; -ScriptExecutionContextIdentifier clientID; String name; WebLockMode mode { WebLockMode::Exclusive }; RefPtr grantedCallback; @@ -66,6 +65,110 @@ bool isValid() const { return !!lockIdentifier; } }; +class WebLockManager::MainThreadBridge : public ThreadSafeRefCounted { +public: +static RefPtr create(ScriptExecutionContext* context) +{ +auto
[webkit-changes] [286473] tags/Safari-612.3.6.1.7/
Title: [286473] tags/Safari-612.3.6.1.7/ Revision 286473 Author repst...@apple.com Date 2021-12-02 18:35:49 -0800 (Thu, 02 Dec 2021) Log Message Tag Safari-612.3.6.1.7. Added Paths tags/Safari-612.3.6.1.7/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286472] trunk/LayoutTests
Title: [286472] trunk/LayoutTests Revision 286472 Author jen...@apple.com Date 2021-12-02 18:14:33 -0800 (Thu, 02 Dec 2021) Log Message [ Monterey ] http/tests/workers/service/serviceworker-websocket.https.html (layout-test) is constant text failure https://bugs.webkit.org/show_bug.cgi?id=233665 Unreviewed test gardening. * platform/mac-wk2/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac-wk2/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (286471 => 286472) --- trunk/LayoutTests/ChangeLog 2021-12-03 02:06:24 UTC (rev 286471) +++ trunk/LayoutTests/ChangeLog 2021-12-03 02:14:33 UTC (rev 286472) @@ -1,3 +1,12 @@ +2021-12-02 Robert Jenner + +[ Monterey ] http/tests/workers/service/serviceworker-websocket.https.html (layout-test) is constant text failure +https://bugs.webkit.org/show_bug.cgi?id=233665 + +Unreviewed test gardening. + +* platform/mac-wk2/TestExpectations: + 2021-12-02 Megan Gardner Re-add support of image control menus. Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (286471 => 286472) --- trunk/LayoutTests/platform/mac-wk2/TestExpectations 2021-12-03 02:06:24 UTC (rev 286471) +++ trunk/LayoutTests/platform/mac-wk2/TestExpectations 2021-12-03 02:14:33 UTC (rev 286472) @@ -1680,3 +1680,4 @@ webkit.org/b/232497 [ BigSur Debug ] media/media-source/media-source-istypesupported-case-sensitive.html [ Pass Crash ] +webkit.org/b/233665 [ Monterey+ ] http/tests/workers/service/serviceworker-websocket.https.html [ Failure ] \ No newline at end of file ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286471] trunk/Source/JavaScriptCore
Title: [286471] trunk/Source/_javascript_Core Revision 286471 Author sbar...@apple.com Date 2021-12-02 18:06:24 -0800 (Thu, 02 Dec 2021) Log Message Lower structureHeapAddressSize on more memory limited ARM64 devices https://bugs.webkit.org/show_bug.cgi?id=233786 Reviewed by Yusuke Suzuki. Some processes using JSC are failing the mmap for the 1GB region. Let's lower the region size to 512MB on lower memory iOS devices. * runtime/JSCConfig.h: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/JSCConfig.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286470 => 286471) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-03 01:42:15 UTC (rev 286470) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-03 02:06:24 UTC (rev 286471) @@ -1,5 +1,18 @@ 2021-12-02 Saam Barati +Lower structureHeapAddressSize on more memory limited ARM64 devices +https://bugs.webkit.org/show_bug.cgi?id=233786 + + +Reviewed by Yusuke Suzuki. + +Some processes using JSC are failing the mmap for the 1GB region. +Let's lower the region size to 512MB on lower memory iOS devices. + +* runtime/JSCConfig.h: + +2021-12-02 Saam Barati + Fix OOM crash in JSValue::toWTFStringForConsole https://bugs.webkit.org/show_bug.cgi?id=233775 Modified: trunk/Source/_javascript_Core/runtime/JSCConfig.h (286470 => 286471) --- trunk/Source/_javascript_Core/runtime/JSCConfig.h 2021-12-03 01:42:15 UTC (rev 286470) +++ trunk/Source/_javascript_Core/runtime/JSCConfig.h 2021-12-03 02:06:24 UTC (rev 286471) @@ -40,7 +40,11 @@ using JITWriteSeparateHeapsFunction = void (*)(off_t, const void*, size_t); #endif +#if PLATFORM(IOS_FAMILY) && CPU(ARM64) && !CPU(ARM64E) +constexpr uintptr_t structureHeapAddressSize = 512 * MB; +#else constexpr uintptr_t structureHeapAddressSize = 1 * GB; +#endif struct Config { static Config& singleton(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286470] trunk/Source/WebKit
Title: [286470] trunk/Source/WebKit Revision 286470 Author commit-qu...@webkit.org Date 2021-12-02 17:42:15 -0800 (Thu, 02 Dec 2021) Log Message Make enum values consisten in ApplicationManifest::Icon::Purpose and _WKApplicationManifestIconPurpose https://bugs.webkit.org/show_bug.cgi?id=233764 rdar://85976270 Patch by Rachel Ginsberg on 2021-12-02 Reviewed by Brent Fulgham. The ApplicationManifest tests already check for 1, 2, and 4 respectively. * UIProcess/API/Cocoa/_WKApplicationManifest.h: Set the _WKApplicationManifestIconPurpose enum values to 1, 2, 4 to match the enum values set in ApplicationManifest::Icon::Purpose. Those values are used in ApplicationManifest because an OptionSet is used. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.h Diff Modified: trunk/Source/WebKit/ChangeLog (286469 => 286470) --- trunk/Source/WebKit/ChangeLog 2021-12-03 01:14:02 UTC (rev 286469) +++ trunk/Source/WebKit/ChangeLog 2021-12-03 01:42:15 UTC (rev 286470) @@ -1,3 +1,21 @@ +2021-12-02 Rachel Ginsberg + +Make enum values consisten in ApplicationManifest::Icon::Purpose +and _WKApplicationManifestIconPurpose +https://bugs.webkit.org/show_bug.cgi?id=233764 +rdar://85976270 + +Reviewed by Brent Fulgham. + +The ApplicationManifest tests already check for 1, 2, and 4 respectively. + +* UIProcess/API/Cocoa/_WKApplicationManifest.h: +Set the _WKApplicationManifestIconPurpose enum values to +1, 2, 4 to match the enum values set in ApplicationManifest::Icon::Purpose. +Those values are used in ApplicationManifest because an +OptionSet is used. + + 2021-12-02 Per Arne Vollan [WP][iOS] Add telemetry to determine which system calls are only used on process launch Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.h (286469 => 286470) --- trunk/Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.h 2021-12-03 01:14:02 UTC (rev 286469) +++ trunk/Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.h 2021-12-03 01:42:15 UTC (rev 286470) @@ -43,9 +43,9 @@ } WK_API_AVAILABLE(macos(10.13.4), ios(11.3)); typedef NS_ENUM(NSInteger, _WKApplicationManifestIconPurpose) { -_WKApplicationManifestIconPurposeAny, -_WKApplicationManifestIconPurposeMonochrome, -_WKApplicationManifestIconPurposeMaskable, +_WKApplicationManifestIconPurposeAny = (1 << 0), +_WKApplicationManifestIconPurposeMonochrome = (1 << 1), +_WKApplicationManifestIconPurposeMaskable = (1 << 2), } WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA)); WK_CLASS_AVAILABLE(macos(10.13.4), ios(11.3)) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286469] trunk/Source/WebKit
Title: [286469] trunk/Source/WebKit Revision 286469 Author pvol...@apple.com Date 2021-12-02 17:14:02 -0800 (Thu, 02 Dec 2021) Log Message [WP][iOS] Add telemetry to determine which system calls are only used on process launch https://bugs.webkit.org/show_bug.cgi?id=233649 Reviewed by Brent Fulgham. Add telemetry to determine which system calls are only used on WebContent process launch on iOS. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::create): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (286468 => 286469) --- trunk/Source/WebKit/ChangeLog 2021-12-03 01:03:15 UTC (rev 286468) +++ trunk/Source/WebKit/ChangeLog 2021-12-03 01:14:02 UTC (rev 286469) @@ -1,5 +1,19 @@ 2021-12-02 Per Arne Vollan +[WP][iOS] Add telemetry to determine which system calls are only used on process launch +https://bugs.webkit.org/show_bug.cgi?id=233649 + + +Reviewed by Brent Fulgham. + +Add telemetry to determine which system calls are only used on WebContent process launch on iOS. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: +* WebProcess/WebPage/WebPage.cpp: +(WebKit::WebPage::create): + +2021-12-02 Per Arne Vollan + [WP] Strengthen sandbox when AppCache is disabled https://bugs.webkit.org/show_bug.cgi?id=233746 Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (286468 => 286469) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-03 01:03:15 UTC (rev 286468) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-03 01:14:02 UTC (rev 286469) @@ -1195,177 +1195,211 @@ (disable-syscall-inference) +#if HAVE(SANDBOX_STATE_FLAGS) +(deny user-preference-read (with enable-state-flag "WebContentProcessLaunched") +(preference-domain "com.apple.WebKit.WebContent.Launch")) +#endif + +(define (syscall-unix-only-in-use-during-launch) +(syscall-number +SYS_bsdthread_register +SYS_chdir +SYS_csops ;; used by Corefoundation initialization +SYS_dup2 +SYS_fileport_makefd +SYS_fsgetpath +SYS_getegid +SYS_getpid +SYS_getrlimit +SYS_gettid +SYS_getuid +SYS_ioctl ;; needed by tcgetattr (TIOCGETA - debugging +SYS_kdebug_trace_string +SYS_kdebug_typefilter +SYS_objc_bp_assist_cfg_np +SYS_os_fault_with_payload +SYS_shared_region_check_np +SYS_shm_open +SYS_sigaction +SYS_sysctl +SYS_workq_open +SYS_writev)) + +(define (syscall-unix-in-use-after-launch) +(syscall-number +SYS___disable_threadsignal +SYS___mac_syscall +SYS_abort_with_payload ;; +SYS_access +SYS_bsdthread_create +SYS_bsdthread_ctl +SYS_bsdthread_terminate +SYS_change_fdguard_np +SYS_close +SYS_close_nocancel +SYS_csops_audittoken ;; used by WK to get entitlments +SYS_exit +SYS_faccessat ;; +SYS_fcntl +SYS_fcntl_nocancel +SYS_fgetattrlist ;; +SYS_flock +SYS_fsetattrlist ;; MTLCompilerFSCache::openSync +SYS_fsetxattr ;; +SYS_fstat64 +SYS_fstat64_extended ;; +SYS_fstatfs64 +SYS_ftruncate +SYS_getattrlist ;; xpc_realpath and directory enumeration +SYS_getdirentries64 +SYS_getentropy +SYS_geteuid +SYS_getfsstat64 +SYS_getrusage +SYS_gettimeofday +SYS_guarded_close_np +SYS_guarded_open_dprotected_np ; +SYS_guarded_open_np +SYS_guarded_pwrite_np +SYS_issetugid +SYS_kdebug_trace64 +SYS_kevent_id +SYS_kevent_qos +SYS_kqueue ;; +SYS_kqueue_workloop_ctl ;; +SYS_listxattr +SYS_lseek +SYS_lstat64 +SYS_madvise +SYS_memorystatus_control +SYS_mkdir +SYS_mmap +SYS_mprotect +SYS_msync +SYS_munmap +SYS_open +SYS_open_nocancel +SYS_openat +SYS_pathconf +SYS_pread +SYS_proc_info +SYS_psynch_cvbroad +SYS_psynch_cvclrprepost +SYS_psynch_cvsignal +SYS_psynch_cvwait +SYS_psynch_mutexdrop +SYS_psynch_mutexwait +SYS_psynch_rw_rdlock ;; +SYS_psynch_rw_unlock +SYS_read +SYS_read_nocancel +SYS_readlink +SYS_rename +SYS_sem_close +SYS_sem_open +SYS_shared_region_map_and_slide_2_np ;; +SYS_stat64 +SYS_statfs64 +
[webkit-changes] [286468] trunk/Tools
Title: [286468] trunk/Tools Revision 286468 Author jbed...@apple.com Date 2021-12-02 17:03:15 -0800 (Thu, 02 Dec 2021) Log Message [resultsdbpy] Python 3.10 compatibility https://bugs.webkit.org/show_bug.cgi?id=233771 Reviewed by Dewei Zhu. * Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/configuration_context.py: Canonical link: https://commits.webkit.org/244808@main Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/configuration_context.py Diff Modified: trunk/Tools/ChangeLog (286467 => 286468) --- trunk/Tools/ChangeLog 2021-12-03 00:56:51 UTC (rev 286467) +++ trunk/Tools/ChangeLog 2021-12-03 01:03:15 UTC (rev 286468) @@ -1,3 +1,13 @@ +2021-11-29 Jonathan Bedard + +[resultsdbpy] Make Python 3.10 compatible +https://bugs.webkit.org/show_bug.cgi?id=233771 + + +Reviewed by Dewei Zhu. + +* Scripts/libraries/resultsdbpy/resultsdbpy/model/configuration_context.py: + 2021-12-02 Jonathan Bedard [git-webkit] Handle ambiguous branch names in land Modified: trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/configuration_context.py (286467 => 286468) --- trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/configuration_context.py 2021-12-03 00:56:51 UTC (rev 286467) +++ trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/configuration_context.py 2021-12-03 01:03:15 UTC (rev 286468) @@ -1,4 +1,4 @@ -# Copyright (C) 2019 Apple Inc. All rights reserved. +# Copyright (C) 2019-2021 Apple Inc. All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions @@ -26,7 +26,8 @@ from cassandra.cqlengine import columns from cassandra.cqlengine.models import Model -from collections import Iterable, OrderedDict +from collections import OrderedDict +from collections.abc import Iterable from datetime import datetime from resultsdbpy.controller.configuration import Configuration from resultsdbpy.model.commit_context import CommitContext ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286467] trunk/Tools
Title: [286467] trunk/Tools Revision 286467 Author jbed...@apple.com Date 2021-12-02 16:56:51 -0800 (Thu, 02 Dec 2021) Log Message [git-webkit] Handle ambiguous branch names in land https://bugs.webkit.org/show_bug.cgi?id=233763 Reviewed by Dewei Zhu. * Scripts/libraries/webkitscmpy/setup.py: Bump version. * Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto. * Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py: (Git.rebase): Be explicit about the name of the target branch when modifying timestamps. Canonical link: https://commits.webkit.org/244807@main Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/libraries/webkitscmpy/setup.py trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py Diff Modified: trunk/Tools/ChangeLog (286466 => 286467) --- trunk/Tools/ChangeLog 2021-12-03 00:37:00 UTC (rev 286466) +++ trunk/Tools/ChangeLog 2021-12-03 00:56:51 UTC (rev 286467) @@ -1,3 +1,16 @@ +2021-12-02 Jonathan Bedard + +[git-webkit] Handle ambiguous branch names in land +https://bugs.webkit.org/show_bug.cgi?id=233763 + + +Reviewed by Dewei Zhu. + +* Scripts/libraries/webkitscmpy/setup.py: Bump version. +* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto. +* Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py: +(Git.rebase): Be explicit about the name of the target branch when modifying timestamps. + 2021-12-02 Devin Rousso [css-values-4] Support `*vi` (inline) and `*vb` (block) viewport units Modified: trunk/Tools/Scripts/libraries/webkitscmpy/setup.py (286466 => 286467) --- trunk/Tools/Scripts/libraries/webkitscmpy/setup.py 2021-12-03 00:37:00 UTC (rev 286466) +++ trunk/Tools/Scripts/libraries/webkitscmpy/setup.py 2021-12-03 00:56:51 UTC (rev 286467) @@ -29,7 +29,7 @@ setup( name='webkitscmpy', -version='3.0.5', +version='3.0.6', description='Library designed to interact with git and svn repositories.', long_description=readme(), classifiers=[ Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py (286466 => 286467) --- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py 2021-12-03 00:37:00 UTC (rev 286466) +++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py 2021-12-03 00:56:51 UTC (rev 286467) @@ -46,7 +46,7 @@ "Please install webkitcorepy with `pip install webkitcorepy --extra-index-url `" ) -version = Version(3, 0, 5) +version = Version(3, 0, 6) AutoInstall.register(Package('fasteners', Version(0, 15, 0))) AutoInstall.register(Package('jinja2', Version(2, 11, 3))) Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py (286466 => 286467) --- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py 2021-12-03 00:37:00 UTC (rev 286466) +++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py 2021-12-03 00:56:51 UTC (rev 286467) @@ -877,7 +877,7 @@ self.executable(), 'filter-branch', '-f', '--env-filter', "GIT_AUTHOR_DATE='{date}';GIT_COMMITTER_DATE='{date}'".format( date='{} -{}'.format(int(time.time()), self.gmtoffset()) -), '{}...{}'.format(target, head), +), 'refs/heads/{}...{}'.format(target, head), ], cwd=self.root_path, env={'FILTER_BRANCH_SQUELCH_WARNING': '1'}, capture_output=True).returncode def fetch(self, branch, remote='origin'): ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286466] trunk/Source/WebCore
Title: [286466] trunk/Source/WebCore Revision 286466 Author s...@apple.com Date 2021-12-02 16:37:00 -0800 (Thu, 02 Dec 2021) Log Message [GPU Process] Move the FilterEffect boundaries to a new class FilterEffectGeometry https://bugs.webkit.org/show_bug.cgi?id=233618 rdar://85881969 Reviewed by Cameron McCormack. The plan is to have Filter own its geometry and the geometry of the FilterEffects. So move the boundaries and their flags from FilterEffect to a new class called FilterEffectGeometry. SVGFilterBuilder will calculate the FilterEffectGeometry for each FilterEffect and store it in map { key: FilterEffect, value: FilterEffectGeometry }. Eventually this map is moved to SVGFilter which will be used in the virtual function effectGeometry(). determineFilterPrimitiveSubregion() will call this virtual function to calculate the primitive subregion. * Headers.cmake: * WebCore.xcodeproj/project.pbxproj: * platform/graphics/filters/Filter.h: (WebCore::Filter::effectGeometry const): * platform/graphics/filters/FilterEffect.cpp: (WebCore::FilterEffect::determineFilterPrimitiveSubregion): (WebCore::FilterEffect::apply): * platform/graphics/filters/FilterEffect.h: (WebCore::FilterEffect::hasX const): Deleted. (WebCore::FilterEffect::setHasX): Deleted. (WebCore::FilterEffect::hasY const): Deleted. (WebCore::FilterEffect::setHasY): Deleted. (WebCore::FilterEffect::hasWidth const): Deleted. (WebCore::FilterEffect::setHasWidth): Deleted. (WebCore::FilterEffect::hasHeight const): Deleted. (WebCore::FilterEffect::setHasHeight): Deleted. (WebCore::FilterEffect::effectBoundaries const): Deleted. (WebCore::FilterEffect::setEffectBoundaries): Deleted. * platform/graphics/filters/FilterEffectGeometry.h: Added. (WebCore::FilterEffectGeometry::FilterEffectGeometry): (WebCore::FilterEffectGeometry::x const): (WebCore::FilterEffectGeometry::y const): (WebCore::FilterEffectGeometry::width const): (WebCore::FilterEffectGeometry::height const): * svg/SVGFilterPrimitiveStandardAttributes.cpp: (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes const): Deleted. * svg/SVGFilterPrimitiveStandardAttributes.h: * svg/graphics/filters/SVGFilter.cpp: (WebCore::SVGFilter::create): (WebCore::SVGFilter::effectGeometry const): * svg/graphics/filters/SVGFilter.h: * svg/graphics/filters/SVGFilterBuilder.cpp: (WebCore::boundarySetFlagsForElement): (WebCore::SVGFilterBuilder::buildFilterEffects): * svg/graphics/filters/SVGFilterBuilder.h: (WebCore::SVGFilterBuilder::takeEffectGeometryMap): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Headers.cmake trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/platform/graphics/filters/Filter.h trunk/Source/WebCore/platform/graphics/filters/FilterEffect.cpp trunk/Source/WebCore/platform/graphics/filters/FilterEffect.h trunk/Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.cpp trunk/Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.h trunk/Source/WebCore/svg/graphics/filters/SVGFilter.cpp trunk/Source/WebCore/svg/graphics/filters/SVGFilter.h trunk/Source/WebCore/svg/graphics/filters/SVGFilterBuilder.cpp trunk/Source/WebCore/svg/graphics/filters/SVGFilterBuilder.h Added Paths trunk/Source/WebCore/platform/graphics/filters/FilterEffectGeometry.h Diff Modified: trunk/Source/WebCore/ChangeLog (286465 => 286466) --- trunk/Source/WebCore/ChangeLog 2021-12-03 00:35:11 UTC (rev 286465) +++ trunk/Source/WebCore/ChangeLog 2021-12-03 00:37:00 UTC (rev 286466) @@ -1,3 +1,58 @@ +2021-12-02 Said Abou-Hallawa + +[GPU Process] Move the FilterEffect boundaries to a new class FilterEffectGeometry +https://bugs.webkit.org/show_bug.cgi?id=233618 +rdar://85881969 + +Reviewed by Cameron McCormack. + +The plan is to have Filter own its geometry and the geometry of the +FilterEffects. So move the boundaries and their flags from FilterEffect +to a new class called FilterEffectGeometry. + +SVGFilterBuilder will calculate the FilterEffectGeometry for each FilterEffect +and store it in map { key: FilterEffect, value: FilterEffectGeometry }. +Eventually this map is moved to SVGFilter which will be used in the +virtual function effectGeometry(). determineFilterPrimitiveSubregion() +will call this virtual function to calculate the primitive subregion. + +* Headers.cmake: +* WebCore.xcodeproj/project.pbxproj: +* platform/graphics/filters/Filter.h: +(WebCore::Filter::effectGeometry const): +* platform/graphics/filters/FilterEffect.cpp: +(WebCore::FilterEffect::determineFilterPrimitiveSubregion): +(WebCore::FilterEffect::apply): +* platform/graphics/filters/FilterEffect.h: +(WebCore::FilterEffect::hasX const): Deleted. +(WebCore::FilterEffect::setHasX): Deleted. +(WebCore::FilterEffect::hasY const): Deleted. +(WebCore::FilterEffect::setHasY): Deleted.
[webkit-changes] [286465] trunk/Source
Title: [286465] trunk/Source Revision 286465 Author pvol...@apple.com Date 2021-12-02 16:35:11 -0800 (Thu, 02 Dec 2021) Log Message [WP] Strengthen sandbox when AppCache is disabled https://bugs.webkit.org/show_bug.cgi?id=233746 Reviewed by Brent Fulgham. Source/WebKit: When AppCache is disabled, we can remove access to some resources in the WebContent process' sandbox. This is implemented using a new sandbox state variable representing the AppCache state. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: * WebProcess/WebPage/WebPage.cpp: * WebProcess/com.apple.WebProcess.sb.in: Source/WTF: Add HAVE macro for sandbox state flags support. * wtf/PlatformHave.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WTF/ChangeLog (286464 => 286465) --- trunk/Source/WTF/ChangeLog 2021-12-03 00:32:06 UTC (rev 286464) +++ trunk/Source/WTF/ChangeLog 2021-12-03 00:35:11 UTC (rev 286465) @@ -1,3 +1,15 @@ +2021-12-02 Per Arne Vollan + +[WP] Strengthen sandbox when AppCache is disabled +https://bugs.webkit.org/show_bug.cgi?id=233746 + + +Reviewed by Brent Fulgham. + +Add HAVE macro for sandbox state flags support. + +* wtf/PlatformHave.h: + 2021-12-02 Megan Gardner Re-add support of image control menus. Modified: trunk/Source/WTF/wtf/PlatformHave.h (286464 => 286465) --- trunk/Source/WTF/wtf/PlatformHave.h 2021-12-03 00:32:06 UTC (rev 286464) +++ trunk/Source/WTF/wtf/PlatformHave.h 2021-12-03 00:35:11 UTC (rev 286465) @@ -1106,3 +1106,8 @@ #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 12 #undef HAVE_AV_DELEGATING_PLAYBACK_COORDINATOR #endif + +#if ((PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 13) \ +|| (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 16)) +#define HAVE_SANDBOX_STATE_FLAGS 1 +#endif Modified: trunk/Source/WebKit/ChangeLog (286464 => 286465) --- trunk/Source/WebKit/ChangeLog 2021-12-03 00:32:06 UTC (rev 286464) +++ trunk/Source/WebKit/ChangeLog 2021-12-03 00:35:11 UTC (rev 286465) @@ -1,3 +1,18 @@ +2021-12-02 Per Arne Vollan + +[WP] Strengthen sandbox when AppCache is disabled +https://bugs.webkit.org/show_bug.cgi?id=233746 + + +Reviewed by Brent Fulgham. + +When AppCache is disabled, we can remove access to some resources in the WebContent process' sandbox. +This is implemented using a new sandbox state variable representing the AppCache state. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: +* WebProcess/WebPage/WebPage.cpp: +* WebProcess/com.apple.WebProcess.sb.in: + 2021-12-02 Megan Gardner Re-add support of image control menus. Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (286464 => 286465) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-03 00:32:06 UTC (rev 286464) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-03 00:35:11 UTC (rev 286465) @@ -1388,27 +1388,45 @@ (when (defined? 'system-fcntl) (deny system-fcntl (with telemetry)) (allow system-fcntl -(fcntl-command F_BARRIERFSYNC) -(fcntl-command F_GETCONFINED) -(fcntl-command F_GETFL) ;; LibJPEGReadPlugin::copyImageBlockSetStandard -(fcntl-command F_GETLK) -(fcntl-command F_GETSIGSINFO) -(fcntl-command F_NOCACHE) -(fcntl-command F_OFD_GETLK) -(fcntl-command F_OFD_SETLKWTIMEOUT) -(fcntl-command F_RDADVISE) -(fcntl-command F_SETCONFINED) -(fcntl-command F_GETPATH) ;; used by dyld4 and CGFontURLCreate, getcwd (at least) -(fcntl-command F_ADDFILESIGS_RETURN) ;; ImageLoaderMachO::loadCodeSignature -(fcntl-command F_CHECK_LV) ;; ImageLoaderMachO::loadCodeSignature -(fcntl-command F_SPECULATIVE_READ) ;; ImageLoaderMachO::mapSegments -(fcntl-command F_SETFD) ;; libwebrtc.dylib (no backtrace) -(fcntl-command F_GETFD) ;; libwebrtc.dylib (no backtrace) -(fcntl-command F_SETFL) ;; CMCapture uses when camera is enabled -(fcntl-command F_SETNOSIGPIPE)) ;; CMCapture uses when camera is enabled +(fcntl-command +F_GETPATH)) ;; used by dyld4 and CGFontURLCreate, getcwd (at least) +(allow system-fcntl (with report) (with telemetry) +(fcntl-command +F_BARRIERFSYNC +F_GETCONFINED +F_GETFL ;; LibJPEGReadPlugin::copyImageBlockSetStandard +F_GETSIGSINFO +F_NOCACHE +F_RDADVISE +F_SETCONFINED +F_ADDFILESIGS_RETURN
[webkit-changes] [286464] trunk/Source/WebCore
Title: [286464] trunk/Source/WebCore Revision 286464 Author cdu...@apple.com Date 2021-12-02 16:32:06 -0800 (Thu, 02 Dec 2021) Log Message Move Shared Worker classes to WebCore/workers/shared https://bugs.webkit.org/show_bug.cgi?id=233769 Reviewed by Alex Christensen. Move Shared Worker classes to WebCore/workers/shared, for better structuring and consistency with WebCore/workers/service. * CMakeLists.txt: * DerivedSources.make: * WebCore.xcodeproj/project.pbxproj: * workers/shared/SharedWorker.cpp: Renamed from Source/WebCore/workers/SharedWorker.cpp. * workers/shared/SharedWorker.h: Renamed from Source/WebCore/workers/SharedWorker.h. * workers/shared/SharedWorker.idl: Renamed from Source/WebCore/workers/SharedWorker.idl. * workers/shared/SharedWorkerGlobalScope.cpp: Renamed from Source/WebCore/workers/SharedWorkerGlobalScope.cpp. * workers/shared/SharedWorkerGlobalScope.h: Renamed from Source/WebCore/workers/SharedWorkerGlobalScope.h. * workers/shared/SharedWorkerGlobalScope.idl: Renamed from Source/WebCore/workers/SharedWorkerGlobalScope.idl. Modified Paths trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/DerivedSources-input.xcfilelist trunk/Source/WebCore/DerivedSources.make trunk/Source/WebCore/Sources.txt trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj Added Paths trunk/Source/WebCore/workers/shared/ trunk/Source/WebCore/workers/shared/SharedWorker.cpp trunk/Source/WebCore/workers/shared/SharedWorker.h trunk/Source/WebCore/workers/shared/SharedWorker.idl trunk/Source/WebCore/workers/shared/SharedWorkerGlobalScope.cpp trunk/Source/WebCore/workers/shared/SharedWorkerGlobalScope.h trunk/Source/WebCore/workers/shared/SharedWorkerGlobalScope.idl Removed Paths trunk/Source/WebCore/workers/SharedWorker.cpp trunk/Source/WebCore/workers/SharedWorker.h trunk/Source/WebCore/workers/SharedWorker.idl trunk/Source/WebCore/workers/SharedWorkerGlobalScope.cpp trunk/Source/WebCore/workers/SharedWorkerGlobalScope.h trunk/Source/WebCore/workers/SharedWorkerGlobalScope.idl Diff Modified: trunk/Source/WebCore/CMakeLists.txt (286463 => 286464) --- trunk/Source/WebCore/CMakeLists.txt 2021-12-03 00:14:48 UTC (rev 286463) +++ trunk/Source/WebCore/CMakeLists.txt 2021-12-03 00:32:06 UTC (rev 286464) @@ -176,6 +176,7 @@ "${WEBCORE_DIR}/workers/service" "${WEBCORE_DIR}/workers/service/context" "${WEBCORE_DIR}/workers/service/server" +"${WEBCORE_DIR}/workers/shared" "${WEBCORE_DIR}/worklets" "${WEBCORE_DIR}/xml" "${WEBCORE_DIR}/xml/parser" @@ -1212,8 +1213,6 @@ workers/AbstractWorker.idl workers/DedicatedWorkerGlobalScope.idl -workers/SharedWorker.idl -workers/SharedWorkerGlobalScope.idl workers/Worker.idl workers/WorkerGlobalScope.idl workers/WorkerLocation.idl @@ -1236,6 +1235,9 @@ workers/service/ServiceWorkerUpdateViaCache.idl workers/service/ServiceWorkerWindowClient.idl +workers/shared/SharedWorker.idl +workers/shared/SharedWorkerGlobalScope.idl + worklets/PaintWorkletGlobalScope.idl worklets/Worklet.idl worklets/WorkletGlobalScope.idl Modified: trunk/Source/WebCore/ChangeLog (286463 => 286464) --- trunk/Source/WebCore/ChangeLog 2021-12-03 00:14:48 UTC (rev 286463) +++ trunk/Source/WebCore/ChangeLog 2021-12-03 00:32:06 UTC (rev 286464) @@ -1,3 +1,23 @@ +2021-12-02 Chris Dumez + +Move Shared Worker classes to WebCore/workers/shared +https://bugs.webkit.org/show_bug.cgi?id=233769 + +Reviewed by Alex Christensen. + +Move Shared Worker classes to WebCore/workers/shared, for better structuring and consistency +with WebCore/workers/service. + +* CMakeLists.txt: +* DerivedSources.make: +* WebCore.xcodeproj/project.pbxproj: +* workers/shared/SharedWorker.cpp: Renamed from Source/WebCore/workers/SharedWorker.cpp. +* workers/shared/SharedWorker.h: Renamed from Source/WebCore/workers/SharedWorker.h. +* workers/shared/SharedWorker.idl: Renamed from Source/WebCore/workers/SharedWorker.idl. +* workers/shared/SharedWorkerGlobalScope.cpp: Renamed from Source/WebCore/workers/SharedWorkerGlobalScope.cpp. +* workers/shared/SharedWorkerGlobalScope.h: Renamed from Source/WebCore/workers/SharedWorkerGlobalScope.h. +* workers/shared/SharedWorkerGlobalScope.idl: Renamed from Source/WebCore/workers/SharedWorkerGlobalScope.idl. + 2021-12-02 Megan Gardner Re-add support of image control menus. Modified: trunk/Source/WebCore/DerivedSources-input.xcfilelist (286463 => 286464) --- trunk/Source/WebCore/DerivedSources-input.xcfilelist 2021-12-03 00:14:48 UTC (rev 286463) +++ trunk/Source/WebCore/DerivedSources-input.xcfilelist 2021-12-03 00:32:06 UTC (rev 286464) @@ -1639,6 +1639,8 @@ $(PROJECT_DIR)/workers/service/ServiceWorkerRegistration.idl $(PROJECT_DIR)/workers/service/ServiceWorkerUpdateViaCache.idl
[webkit-changes] [286463] branches/safari-612-branch/Source/WebCore/page/csp/ ContentSecurityPolicy.cpp
Title: [286463] branches/safari-612-branch/Source/WebCore/page/csp/ContentSecurityPolicy.cpp Revision 286463 Author alanc...@apple.com Date 2021-12-02 16:14:48 -0800 (Thu, 02 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85943167 candidate function not viable: no known conversion from 'const WTF::String' to 'const WTF::URL' for 3rd argument Modified Paths branches/safari-612-branch/Source/WebCore/page/csp/ContentSecurityPolicy.cpp Diff Modified: branches/safari-612-branch/Source/WebCore/page/csp/ContentSecurityPolicy.cpp (286462 => 286463) --- branches/safari-612-branch/Source/WebCore/page/csp/ContentSecurityPolicy.cpp 2021-12-03 00:12:52 UTC (rev 286462) +++ branches/safari-612-branch/Source/WebCore/page/csp/ContentSecurityPolicy.cpp 2021-12-03 00:14:48 UTC (rev 286463) @@ -570,7 +570,7 @@ TextPosition sourcePosition(WTF::OrdinalNumber::beforeFirst(), WTF::OrdinalNumber()); auto handleViolatedDirective = [&] (const ContentSecurityPolicyDirective& violatedDirective) { String consoleMessage = consoleMessageForViolation(name, violatedDirective, blockedURL, "Refused to load"); -reportViolation(name, violatedDirective, blockedURL.string(), consoleMessage, sourceURL, sourcePosition); +reportViolation(name, violatedDirective, blockedURL, consoleMessage, sourceURL, sourcePosition); }; return allPoliciesAllow(WTFMove(handleViolatedDirective), resourcePredicate, url, redirectResponseReceived == RedirectResponseReceived::Yes); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286462] trunk
Title: [286462] trunk Revision 286462 Author sbar...@apple.com Date 2021-12-02 16:12:52 -0800 (Thu, 02 Dec 2021) Log Message Fix OOM crash in JSValue::toWTFStringForConsole https://bugs.webkit.org/show_bug.cgi?id=233775 Reviewed by Mark Lam. JSTests: * stress/pretty-print-oom.js: Added. Source/_javascript_Core: * runtime/JSCJSValue.cpp: (JSC::JSValue::toWTFStringForConsole const): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/JSCJSValue.cpp Added Paths trunk/JSTests/stress/pretty-print-oom.js Diff Modified: trunk/JSTests/ChangeLog (286461 => 286462) --- trunk/JSTests/ChangeLog 2021-12-02 23:49:57 UTC (rev 286461) +++ trunk/JSTests/ChangeLog 2021-12-03 00:12:52 UTC (rev 286462) @@ -1,3 +1,13 @@ +2021-12-02 Saam Barati + +Fix OOM crash in JSValue::toWTFStringForConsole +https://bugs.webkit.org/show_bug.cgi?id=233775 + + +Reviewed by Mark Lam. + +* stress/pretty-print-oom.js: Added. + 2021-11-30 Saam Barati GetMyArgumentByValOutOfBounds needs to check for negative indices Added: trunk/JSTests/stress/pretty-print-oom.js (0 => 286462) --- trunk/JSTests/stress/pretty-print-oom.js (rev 0) +++ trunk/JSTests/stress/pretty-print-oom.js 2021-12-03 00:12:52 UTC (rev 286462) @@ -0,0 +1,4 @@ +//@ skip if $memoryLimited +//@ runNoisyTestDefault + +prettyPrint('a'.repeat(2 ** 31 - 1)); Modified: trunk/Source/_javascript_Core/ChangeLog (286461 => 286462) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-02 23:49:57 UTC (rev 286461) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-03 00:12:52 UTC (rev 286462) @@ -1,3 +1,14 @@ +2021-12-02 Saam Barati + +Fix OOM crash in JSValue::toWTFStringForConsole +https://bugs.webkit.org/show_bug.cgi?id=233775 + + +Reviewed by Mark Lam. + +* runtime/JSCJSValue.cpp: +(JSC::JSValue::toWTFStringForConsole const): + 2021-12-02 Zan Dobersek [RISCV64] Fix effective address loading for LabelReferences with offsets Modified: trunk/Source/_javascript_Core/runtime/JSCJSValue.cpp (286461 => 286462) --- trunk/Source/_javascript_Core/runtime/JSCJSValue.cpp 2021-12-02 23:49:57 UTC (rev 286461) +++ trunk/Source/_javascript_Core/runtime/JSCJSValue.cpp 2021-12-03 00:12:52 UTC (rev 286462) @@ -474,9 +474,9 @@ String result = string->value(globalObject); RETURN_IF_EXCEPTION(scope, { }); if (isString()) -return makeString("\"", result, "\""); +return tryMakeString("\"", result, "\""); if (jsDynamicCast(vm, *this)) -return makeString("[", result, "]"); +return tryMakeString("[", result, "]"); return result; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286461] trunk
Title: [286461] trunk Revision 286461 Author megan_gard...@apple.com Date 2021-12-02 15:49:57 -0800 (Thu, 02 Dec 2021) Log Message Re-add support of image control menus. https://bugs.webkit.org/show_bug.cgi?id=233305 Reviewed by Tim Horton. Source/WebCore: Test: fast/images/image-controls-basic.html Image control menus are needed for mail transition to modern WebKit, so re-add them after the removal in https://trac.webkit.org/changeset/272117/webkit * DerivedSources-input.xcfilelist: * DerivedSources.make: * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): * css/CSSProperties.json: * css/CSSValueKeywords.in: * css/parser/CSSParserIdioms.cpp: (WebCore::isValueAllowedInMode): * dom/mac/ImageControlsMac.cpp: Added. (WebCore::ImageControlsMac::imageControlsElementIdentifier): (WebCore::ImageControlsMac::imageControlsButtonIdentifier): (WebCore::ImageControlsMac::hasControls): (WebCore::ImageControlsMac::imageControlHost): (WebCore::ImageControlsMac::isImageControlsButtonElement): (WebCore::ImageControlsMac::containerRect): (WebCore::ImageControlsMac::createImageControls): * dom/mac/ImageControlsMac.h: Added. * html/HTMLAttributeNames.in: * html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::HTMLImageElement): (WebCore::HTMLImageElement::parseAttribute): (WebCore::HTMLImageElement::didAttachRenderers): (WebCore::HTMLImageElement::updateImageControls): (WebCore::HTMLImageElement::tryCreateImageControls): (WebCore::HTMLImageElement::destroyImageControls): (WebCore::HTMLImageElement::hasImageControls const): (WebCore::HTMLImageElement::childShouldCreateRenderer const): * html/HTMLImageElement.h: (WebCore::HTMLImageElement::hasShadowControls const): * html/shadow/mac/ImageControlsMac.css: Added. (#if defined(ENABLE_SERVICE_CONTROLS) && ENABLE_SERVICE_CONTROLS): (button#image-controls-button): (div#image-controls:hover button#image-controls-button): * html/shadow/mac/ImageControlsRootElementMac.cpp: Added. (WebCore::xWebkitImageControlsElementIdentifier): (WebCore::RenderImageControls::RenderImageControls): (WebCore::RenderImageControls::updateLogicalWidth): (WebCore::RenderImageControls::computeLogicalHeight const): (WebCore::hasControl): (WebCore::imageControlHost): (WebCore::isImageControls): (WebCore::ImageControlsRootElement::tryCreate): (WebCore::ImageControlsRootElementMac::ImageControlsRootElementMac): (WebCore::ImageControlsRootElementMac::createElementRenderer): * html/shadow/mac/ImageControlsRootElementMac.h: Added. * page/ContextMenuController.cpp: (WebCore::imageFromImageElementNode): (WebCore::ContextMenuController::maybeCreateContextMenu): (WebCore::ContextMenuController::showImageControlsMenu): * page/ContextMenuController.h: * page/EventHandler.cpp: (WebCore::EventHandler::textRecognitionCandidateElement const): * platform/ThemeTypes.cpp: (WebCore::operator<<): * platform/ThemeTypes.h: * rendering/RenderImage.cpp: (WebCore::RenderImage::RenderImage): * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle): (WebCore::RenderTheme::paint): (WebCore::RenderTheme::paintBorderOnly): (WebCore::RenderTheme::paintDecorations): (WebCore::RenderTheme::adjustImageControlsButtonStyle const): * rendering/RenderTheme.h: (WebCore::RenderTheme::imageControlsButtonSize const): (WebCore::RenderTheme::imageControlsButtonPositionOffset const): (WebCore::RenderTheme::paintImageControlsButton): * rendering/RenderThemeMac.h: * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::documentViewFor const): (WebCore::RenderThemeMac::adjustImageControlsButtonStyle const): (WebCore::RenderThemeMac::servicesRolloverButtonCell const): (WebCore::RenderThemeMac::paintImageControlsButton): (WebCore::RenderThemeMac::imageControlsButtonSize const): (WebCore::RenderThemeMac::imageControlsButtonPositionOffset const): * style/UserAgentStyle.cpp: * style/UserAgentStyle.h: Source/WebCore/PAL: Move SPI to SPI specific file. * PAL.xcodeproj/project.pbxproj: * pal/spi/mac/NSServicesRolloverButtonCellSPI.h: Added. Source/WebKit: Image control menus are needed for mail transition to modern WebKit, so re-add them after the removal in https://trac.webkit.org/changeset/272117/webkit * Platform/spi/mac/AppKitSPI.h: * UIProcess/API/C/WKPreferences.cpp: (WKPreferencesSetImageControlsEnabled): (WKPreferencesGetImageControlsEnabled): * UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _setupPageConfiguration:]): * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: (-[WKWebViewConfiguration init]): (-[WKWebViewConfiguration copyWithZone:]): (-[WKWebViewConfiguration _imageControlsEnabled]): (-[WKWebViewConfiguration _setImageControlsEnabled:]): * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Source/WTF: * Scripts/Preferences/WebPreferences.yaml: LayoutTests: Update tests to account for image controls. * fast/images/image-controls-basic.html: Added. * fast/images/image-controls-basic-expected.txt: Added. *
[webkit-changes] [286460] trunk/Source/WebKit
Title: [286460] trunk/Source/WebKit Revision 286460 Author pvol...@apple.com Date 2021-12-02 15:48:09 -0800 (Thu, 02 Dec 2021) Log Message [iOS] Add required system call to WebKit sandboxes https://bugs.webkit.org/show_bug.cgi?id=233730 Reviewed by Brent Fulgham. * GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in: * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: * Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb: * Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb: * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: * WebProcess/com.apple.WebProcess.sb.in: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (286459 => 286460) --- trunk/Source/WebKit/ChangeLog 2021-12-02 23:37:18 UTC (rev 286459) +++ trunk/Source/WebKit/ChangeLog 2021-12-02 23:48:09 UTC (rev 286460) @@ -1,3 +1,18 @@ +2021-12-02 Per Arne Vollan + +[iOS] Add required system call to WebKit sandboxes +https://bugs.webkit.org/show_bug.cgi?id=233730 + + +Reviewed by Brent Fulgham. + +* GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in: +* NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: +* Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb: +* Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb: +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: +* WebProcess/com.apple.WebProcess.sb.in: + 2021-12-02 Myles C. Maxfield [WebGPU] Hook up navigator.gpu.requestAdapter() Modified: trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in (286459 => 286460) --- trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in 2021-12-02 23:37:18 UTC (rev 286459) +++ trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in 2021-12-02 23:48:09 UTC (rev 286460) @@ -1002,3 +1002,6 @@ SYS_ulock_wake SYS_work_interval_ctl SYS_workq_kernreturn))) + +(when (defined? 'SYS__map_with_linking_np) +(allow syscall-unix SYS__map_with_linking_np)) Modified: trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in (286459 => 286460) --- trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in 2021-12-02 23:37:18 UTC (rev 286459) +++ trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in 2021-12-02 23:48:09 UTC (rev 286460) @@ -570,6 +570,9 @@ SYS_ulock_wake SYS_workq_kernreturn))) +(when (defined? 'SYS__map_with_linking_np) +(allow syscall-unix SYS__map_with_linking_np)) + #if HAVE(SANDBOX_MESSAGE_FILTERING) (when (and (equal? (param "ENABLE_SANDBOX_MESSAGE_FILTER") "YES") (defined? 'mach-kernel-endpoint)) (allow mach-kernel-endpoint Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb (286459 => 286460) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb 2021-12-02 23:37:18 UTC (rev 286459) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb 2021-12-02 23:48:09 UTC (rev 286460) @@ -807,6 +807,9 @@ SYS_write_nocancel SYS_writev))) +(when (defined? 'SYS__map_with_linking_np) +(allow syscall-unix SYS__map_with_linking_np)) + (when (defined? 'syscall-mach) (allow syscall-mach (with telemetry)) (allow syscall-mach Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb (286459 => 286460) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb 2021-12-02 23:37:18 UTC (rev 286459) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb 2021-12-02 23:48:09 UTC (rev 286460) @@ -737,6 +737,9 @@ SYS_write_nocancel SYS_writev))) +(when (defined? 'SYS__map_with_linking_np) +(allow syscall-unix SYS__map_with_linking_np)) + (when (defined? 'syscall-mach) (allow syscall-mach (with report) (with telemetry)) (allow syscall-mach Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (286459 => 286460) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-02 23:37:18 UTC (rev 286459) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-02 23:48:09 UTC (rev 286460) @@ -1368,6 +1368,9 @@ (syscall-number SYS_writev)) ) +(when (defined? 'SYS__map_with_linking_np) +(allow syscall-unix
[webkit-changes] [286459] trunk/Source
Title: [286459] trunk/Source Revision 286459 Author mmaxfi...@apple.com Date 2021-12-02 15:37:18 -0800 (Thu, 02 Dec 2021) Log Message [WebGPU] Hook up navigator.gpu.requestAdapter() https://bugs.webkit.org/show_bug.cgi?id=233619 Source/WebCore: Reviewed by Dean Jackson. Hook up Navigator.GPU to WebKitLegacy/WebKit (via ChromeClient) so WebKit can provide a RemoteGPUProxy "backing" object. I have a test for this! But unfortunately I can't commit it yet because HAVE(WEBGPU_IMPLEMENTATION) has to be off until Apple configures its internal build system. As soon as that's done, I'll add the test for this!!! (The test passes when run locally.) * Configurations/WebCore.xcconfig: Weak link with WebGPU.framework. This will succeed even if WebGPU.framework doesn't exist. * Modules/WebGPU/GPU.cpp: (WebCore::GPU::setBacking): This is for WorkerNavigator. To create a GPU object, we have to go through ChromeClient, which means we have to use the main thread. This means that creating the GPU object has to be asynchronous on workers. We handle this by having WorkerNavigator::gpu() return a shell object with no "backing," and asynchronously kick off a task to construct a backing object and connect it to the shell object. If content calls requestAdapter() on the shell, that function is already async, so we just fold in the wait for the backing into the already-existing wait we have to do as a matter of course. This implements that. (WebCore::GPU::requestAdapter): * Modules/WebGPU/GPU.h: (WebCore::GPU::create): (WebCore::GPU::backing): Deleted. (WebCore::GPU::backing const): Deleted. (WebCore::GPU::GPU): Deleted. * Modules/WebGPU/GPUDevice.cpp: (WebCore::GPUDevice::popErrorScope): * page/Chrome.cpp: (WebCore::Chrome::createGPUForWebGPU const): Ask WebKit / WebKitLegacy what kind of backing we should be using. * page/Chrome.h: * page/ChromeClient.h: (WebCore::ChromeClient::createGPUForWebGPU const): * page/Navigator.cpp: (WebCore::Navigator::gpu): * page/Navigator.h: * page/NavigatorBase.h: (WebCore::NavigatorBase::gpu): Deleted. * page/WorkerNavigator.cpp: (WebCore::WorkerNavigator::gpu): * page/WorkerNavigator.h: Source/WebGPU: Just hook up enough for Instance::requestAdapter() to not fail. Reviewed by Dean Jackson. * WebGPU/Adapter.mm: (WebGPU::Adapter::getLimits): * WebGPU/Instance.mm: (WebGPU::Instance::requestAdapter): (wgpuCreateInstance): (wgpuInstanceRequestAdapter): Source/WebKit: Reviewed by Dean Jackson. This hooks up a new message, GPUConnectionToWebProcess::createRemoteGPU(), which starts the whole WebGPU GPU process infrastructure. * Configurations/BaseTarget.xcconfig: We have to be able to #include files from WebGPU. * GPUProcess/GPUConnectionToWebProcess.cpp: (WebKit::GPUConnectionToWebProcess::createRemoteGPU): GPUConnectionToWebProcess owns the RemoteGPUs. * GPUProcess/GPUConnectionToWebProcess.h: * GPUProcess/GPUConnectionToWebProcess.messages.in: * Sources.txt: * WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp: (WebKit::RemoteGPUProxy::RemoteGPUProxy): Creating a RemoteGPUProxy needs to send a message to the GPU process to start the GPU process infrastructure. We block while we're waiting for the reply from the GPU process. This was copied from RemoteGraphicsContextGL. (WebKit::RemoteGPUProxy::gpuProcessConnectionDidClose): * WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.h: * WebProcess/WebCoreSupport/WebChromeClient.cpp: Hook up RemoteGPUProxy to WebCore. (WebKit::WebChromeClient::createGPUForWebGPU const): * WebProcess/WebCoreSupport/WebChromeClient.h: Source/WebKitLegacy/mac: Reviewed by Dean Jackson. * Configurations/WebKitLegacy.xcconfig: We have to be able to #include files from WebGPU. * WebCoreSupport/WebChromeClient.h: * WebCoreSupport/WebChromeClient.mm: (WebChromeClient::createGPUForWebGPU const): Hook up GPUImpl to WebCore. Source/WTF: Reviewed by Dean Jackson. * wtf/PlatformHave.h: Create a HAVE() macro, by default off. As we bring more infrastructure online, this will eventually flip to on. Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Configurations/WebCore.xcconfig trunk/Source/WebCore/Modules/WebGPU/GPU.cpp trunk/Source/WebCore/Modules/WebGPU/GPU.h trunk/Source/WebCore/Modules/WebGPU/GPUDevice.cpp trunk/Source/WebCore/page/Chrome.cpp trunk/Source/WebCore/page/Chrome.h trunk/Source/WebCore/page/ChromeClient.h trunk/Source/WebCore/page/Navigator.cpp trunk/Source/WebCore/page/Navigator.h trunk/Source/WebCore/page/NavigatorBase.h trunk/Source/WebCore/page/WorkerNavigator.cpp trunk/Source/WebCore/page/WorkerNavigator.h trunk/Source/WebGPU/ChangeLog trunk/Source/WebGPU/WebGPU/Adapter.mm trunk/Source/WebGPU/WebGPU/Instance.mm trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Configurations/BaseTarget.xcconfig trunk/Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp trunk/Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h
[webkit-changes] [286458] trunk
Title: [286458] trunk Revision 286458 Author drou...@apple.com Date 2021-12-02 15:26:22 -0800 (Thu, 02 Dec 2021) Log Message [css-values-4] Support `*vi` (inline) and `*vb` (block) viewport units https://bugs.webkit.org/show_bug.cgi?id=232895 Reviewed by Simon Fraser. Source/WebCore: `*vi` is equal to 1% of the size of the UA-default/large/small/dynamic viewport size in the direction of the root element’s inline axis. `*vb` is equal to 1% of the size of the initial containing block UA-default/small/large/dynamic viewport size in the direction of the root element’s block axis. As an example, on `about:blank`: - `vi` would be equal to `vw` - `vb` would be equal to `vh` - `svi` would be equal to `svw` - `svb` would be equal to `svh` - `lvi` would be equal to `lvw` - `lvb` would be equal to `lvh` - `dvi` would be equal to `dvw` - `dvb` would be equal to `dvh` Spec: Tests: CSSViewportUnits.AllSame CSSViewportUnits.EmptyUnobscuredSizeOverrides CSSViewportUnits.SameUnobscuredSizeOverrides CSSViewportUnits.DifferentUnobscuredSizeOverrides CSSViewportUnits.SVGDocument * css/CSSUnits.h: * css/CSSUnits.cpp: (WebCore::operator<<): * css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::isViewportPercentageLength): * css/CSSPrimitiveValue.cpp: (WebCore::isValidCSSUnitTypeForDoubleConversion): (WebCore::isStringType): (WebCore::CSSPrimitiveValue::cleanup): (WebCore::lengthOfViewportPhysicalAxisForLogicalAxis): Added. (WebCore::CSSPrimitiveValue::computeUnzoomedNonCalcLengthDouble): (WebCore::CSSPrimitiveValue::computeNonCalcLengthDouble): (WebCore::CSSPrimitiveValue::unitTypeString): (WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText const): (WebCore::CSSPrimitiveValue::equals const): * css/parser/CSSParserToken.cpp: (WebCore::cssPrimitiveValueUnitFromTrie): * css/parser/CSSPropertyParserHelpers.cpp: (WebCore::CSSPropertyParserHelpers::consumeLengthRawWithKnownTokenTypeDimension): * css/calc/CSSCalcCategoryMapping.cpp: (WebCore::calcUnitCategory): (WebCore::calculationCategoryForCombination): (WebCore::hasDoubleValue): Source/WebInspectorUI: * UserInterface/Models/CSSCompletions.js: Tools: * TestWebKitAPI/Tests/WebKitCocoa/CSSViewportUnits.html: * TestWebKitAPI/Tests/WebKitCocoa/CSSViewportUnits.svg: Added. * TestWebKitAPI/Tests/WebKitCocoa/CSSViewportUnits.mm: (TEST.CSSViewportUnits.AllSame): (TEST.CSSViewportUnits.EmptyUnobscuredSizeOverrides): (TEST.CSSViewportUnits.SameUnobscuredSizeOverrides): (TEST.CSSViewportUnits.DifferentUnobscuredSizeOverrides): (TEST.CSSViewportUnits.SVGDocument): Added. * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/CSSPrimitiveValue.cpp trunk/Source/WebCore/css/CSSPrimitiveValue.h trunk/Source/WebCore/css/CSSUnits.cpp trunk/Source/WebCore/css/CSSUnits.h trunk/Source/WebCore/css/calc/CSSCalcCategoryMapping.cpp trunk/Source/WebCore/css/parser/CSSParserToken.cpp trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Models/CSSCompletions.js trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/CSSViewportUnits.html trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/CSSViewportUnits.mm Added Paths trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/CSSViewportUnits.svg Diff Modified: trunk/Source/WebCore/ChangeLog (286457 => 286458) --- trunk/Source/WebCore/ChangeLog 2021-12-02 23:07:02 UTC (rev 286457) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 23:26:22 UTC (rev 286458) @@ -1,3 +1,55 @@ +2021-12-02 Devin Rousso + +[css-values-4] Support `*vi` (inline) and `*vb` (block) viewport units +https://bugs.webkit.org/show_bug.cgi?id=232895 + + +Reviewed by Simon Fraser. + +`*vi` is equal to 1% of the size of the UA-default/large/small/dynamic viewport size in the direction of the root element’s inline axis. +`*vb` is equal to 1% of the size of the initial containing block UA-default/small/large/dynamic viewport size in the direction of the root element’s block axis. +As an example, on `about:blank`: +- `vi` would be equal to `vw` +- `vb` would be equal to `vh` +- `svi` would be equal to `svw` +- `svb` would be equal to `svh` +- `lvi` would be equal to `lvw` +- `lvb` would be equal to `lvh` +- `dvi` would be equal to `dvw` +- `dvb` would be equal to `dvh` + +Spec: + +Tests: CSSViewportUnits.AllSame + CSSViewportUnits.EmptyUnobscuredSizeOverrides + CSSViewportUnits.SameUnobscuredSizeOverrides + CSSViewportUnits.DifferentUnobscuredSizeOverrides + CSSViewportUnits.SVGDocument + +* css/CSSUnits.h: +* css/CSSUnits.cpp: +(WebCore::operator<<): +* css/CSSPrimitiveValue.h: +
[webkit-changes] [286457] branches/safari-612-branch/Source
Title: [286457] branches/safari-612-branch/Source Revision 286457 Author repst...@apple.com Date 2021-12-02 15:07:02 -0800 (Thu, 02 Dec 2021) Log Message Unreviewed versioning fix. rdar://85990909 Modified Paths branches/safari-612-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286456 => 286457) --- branches/safari-612-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-02 23:05:08 UTC (rev 286456) +++ branches/safari-612-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-02 23:07:02 UTC (rev 286457) @@ -21,7 +21,7 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -MAJOR_VERSION = 613; +MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 1; MICRO_VERSION = 0; Modified: branches/safari-612-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286456 => 286457) --- branches/safari-612-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-02 23:05:08 UTC (rev 286456) +++ branches/safari-612-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-02 23:07:02 UTC (rev 286457) @@ -21,7 +21,7 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -MAJOR_VERSION = 613; +MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 1; MICRO_VERSION = 0; Modified: branches/safari-612-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286456 => 286457) --- branches/safari-612-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-02 23:05:08 UTC (rev 286456) +++ branches/safari-612-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-02 23:07:02 UTC (rev 286457) @@ -21,7 +21,7 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -MAJOR_VERSION = 613; +MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 1; MICRO_VERSION = 0; Modified: branches/safari-612-branch/Source/WebCore/Configurations/Version.xcconfig (286456 => 286457) --- branches/safari-612-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-02 23:05:08 UTC (rev 286456) +++ branches/safari-612-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-02 23:07:02 UTC (rev 286457) @@ -21,7 +21,7 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -MAJOR_VERSION = 613; +MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 1; MICRO_VERSION = 0; Modified: branches/safari-612-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286456 => 286457) --- branches/safari-612-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-02 23:05:08 UTC (rev 286456) +++ branches/safari-612-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-02 23:07:02 UTC (rev 286457) @@ -21,7 +21,7 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -MAJOR_VERSION = 613; +MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 1; MICRO_VERSION = 0; Modified: branches/safari-612-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (286456 => 286457) --- branches/safari-612-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-12-02 23:05:08 UTC (rev 286456) +++ branches/safari-612-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-12-02 23:07:02 UTC (rev 286457) @@ -1,4 +1,4 @@ -MAJOR_VERSION = 613; +MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 1; MICRO_VERSION = 0; Modified: branches/safari-612-branch/Source/WebKit/Configurations/Version.xcconfig (286456 => 286457) --- branches/safari-612-branch/Source/WebKit/Configurations/Version.xcconfig 2021-12-02 23:05:08 UTC (rev 286456) +++ branches/safari-612-branch/Source/WebKit/Configurations/Version.xcconfig 2021-12-02 23:07:02 UTC (rev 286457) @@ -21,7 +21,7 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
[webkit-changes] [286456] trunk/Source/WebCore
Title: [286456] trunk/Source/WebCore Revision 286456 Author cdu...@apple.com Date 2021-12-02 15:05:08 -0800 (Thu, 02 Dec 2021) Log Message Unreviewed follow-up to r286453 to address comments from Darin. * dom/MessageChannel.h: (WebCore::MessageChannel::port1 const): (WebCore::MessageChannel::port2 const): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/MessageChannel.h Diff Modified: trunk/Source/WebCore/ChangeLog (286455 => 286456) --- trunk/Source/WebCore/ChangeLog 2021-12-02 22:59:38 UTC (rev 286455) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 23:05:08 UTC (rev 286456) @@ -1,5 +1,13 @@ 2021-12-02 Chris Dumez +Unreviewed follow-up to r286453 to address comments from Darin. + +* dom/MessageChannel.h: +(WebCore::MessageChannel::port1 const): +(WebCore::MessageChannel::port2 const): + +2021-12-02 Chris Dumez + [WK2] Make Web Lock API work across multiple WebProcesses https://bugs.webkit.org/show_bug.cgi?id=233719 Modified: trunk/Source/WebCore/dom/MessageChannel.h (286455 => 286456) --- trunk/Source/WebCore/dom/MessageChannel.h 2021-12-02 22:59:38 UTC (rev 286455) +++ trunk/Source/WebCore/dom/MessageChannel.h 2021-12-02 23:05:08 UTC (rev 286456) @@ -39,8 +39,8 @@ static Ref create(ScriptExecutionContext&); ~MessageChannel(); -MessagePort& port1() const { return m_ports.first.get(); } -MessagePort& port2() const { return m_ports.second.get(); } +MessagePort& port1() const { return m_ports.first; } +MessagePort& port2() const { return m_ports.second; } private: explicit MessageChannel(ScriptExecutionContext&); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286454] trunk/Source/WebCore
Title: [286454] trunk/Source/WebCore Revision 286454 Author drou...@apple.com Date 2021-12-02 14:27:27 -0800 (Thu, 02 Dec 2021) Log Message [Apple Pay] recurring line items appear way in the future https://bugs.webkit.org/show_bug.cgi?id=233779 Reviewed by Wenson Hsieh. _javascript_ `Date` uses a milliseconds-based value, whereas native `NSDate` is seconds-based. * Modules/applepay/cocoa/PaymentSummaryItemsCocoa.mm: (WebCore::toDate): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/applepay/cocoa/PaymentSummaryItemsCocoa.mm Diff Modified: trunk/Source/WebCore/ChangeLog (286453 => 286454) --- trunk/Source/WebCore/ChangeLog 2021-12-02 22:22:49 UTC (rev 286453) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 22:27:27 UTC (rev 286454) @@ -1,3 +1,16 @@ +2021-12-02 Devin Rousso + +[Apple Pay] recurring line items appear way in the future +https://bugs.webkit.org/show_bug.cgi?id=233779 + + +Reviewed by Wenson Hsieh. + +_javascript_ `Date` uses a milliseconds-based value, whereas native `NSDate` is seconds-based. + +* Modules/applepay/cocoa/PaymentSummaryItemsCocoa.mm: +(WebCore::toDate): + 2021-12-02 Chris Dumez MessageChannel::port1() / port2() should return references instead of pointers Modified: trunk/Source/WebCore/Modules/applepay/cocoa/PaymentSummaryItemsCocoa.mm (286453 => 286454) --- trunk/Source/WebCore/Modules/applepay/cocoa/PaymentSummaryItemsCocoa.mm 2021-12-02 22:22:49 UTC (rev 286453) +++ trunk/Source/WebCore/Modules/applepay/cocoa/PaymentSummaryItemsCocoa.mm 2021-12-02 22:27:27 UTC (rev 286454) @@ -62,7 +62,7 @@ static NSDate *toDate(double date) { -return [NSDate dateWithTimeIntervalSince1970:date]; +return [NSDate dateWithTimeIntervalSince1970:(date / 1000)]; } #endif // HAVE(PASSKIT_RECURRING_SUMMARY_ITEM) || HAVE(PASSKIT_DEFERRED_SUMMARY_ITEM) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286453] trunk/Source/WebCore
Title: [286453] trunk/Source/WebCore Revision 286453 Author cdu...@apple.com Date 2021-12-02 14:22:49 -0800 (Thu, 02 Dec 2021) Log Message MessageChannel::port1() / port2() should return references instead of pointers https://bugs.webkit.org/show_bug.cgi?id=233772 Reviewed by Alex Christensen. This was extracted from Alex Christensen's large patch at Bug 230382. * Modules/webaudio/AudioWorkletNode.cpp: (WebCore::AudioWorkletNode::create): * bindings/js/JSMessageChannelCustom.cpp: (WebCore::JSMessageChannel::visitAdditionalChildren): * dom/MessageChannel.cpp: (WebCore::generateMessagePorts): (WebCore::MessageChannel::MessageChannel): * dom/MessageChannel.h: (WebCore::MessageChannel::port1 const): (WebCore::MessageChannel::port2 const): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/webaudio/AudioWorkletNode.cpp trunk/Source/WebCore/bindings/js/JSMessageChannelCustom.cpp trunk/Source/WebCore/dom/MessageChannel.cpp trunk/Source/WebCore/dom/MessageChannel.h Diff Modified: trunk/Source/WebCore/ChangeLog (286452 => 286453) --- trunk/Source/WebCore/ChangeLog 2021-12-02 22:21:46 UTC (rev 286452) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 22:22:49 UTC (rev 286453) @@ -1,3 +1,23 @@ +2021-12-02 Chris Dumez + +MessageChannel::port1() / port2() should return references instead of pointers +https://bugs.webkit.org/show_bug.cgi?id=233772 + +Reviewed by Alex Christensen. + +This was extracted from Alex Christensen's large patch at Bug 230382. + +* Modules/webaudio/AudioWorkletNode.cpp: +(WebCore::AudioWorkletNode::create): +* bindings/js/JSMessageChannelCustom.cpp: +(WebCore::JSMessageChannel::visitAdditionalChildren): +* dom/MessageChannel.cpp: +(WebCore::generateMessagePorts): +(WebCore::MessageChannel::MessageChannel): +* dom/MessageChannel.h: +(WebCore::MessageChannel::port1 const): +(WebCore::MessageChannel::port2 const): + 2021-12-02 Devin Rousso [Payment Request] Validate payment method data on construction Modified: trunk/Source/WebCore/Modules/webaudio/AudioWorkletNode.cpp (286452 => 286453) --- trunk/Source/WebCore/Modules/webaudio/AudioWorkletNode.cpp 2021-12-02 22:21:46 UTC (rev 286452) +++ trunk/Source/WebCore/Modules/webaudio/AudioWorkletNode.cpp 2021-12-02 22:22:49 UTC (rev 286453) @@ -82,8 +82,8 @@ return Exception { InvalidStateError, "Audio context's frame is detached"_s }; auto messageChannel = MessageChannel::create(*context.scriptExecutionContext()); -auto nodeMessagePort = messageChannel->port1(); -auto processorMessagePort = messageChannel->port2(); +auto& nodeMessagePort = messageChannel->port1(); +auto& processorMessagePort = messageChannel->port2(); RefPtr serializedOptions; { @@ -95,7 +95,7 @@ } auto parameterData = WTFMove(options.parameterData); -auto node = adoptRef(*new AudioWorkletNode(context, name, WTFMove(options), *nodeMessagePort)); +auto node = adoptRef(*new AudioWorkletNode(context, name, WTFMove(options), nodeMessagePort)); node->suspendIfNeeded(); auto result = node->handleAudioNodeOptions(options, { 2, ChannelCountMode::Max, ChannelInterpretation::Speakers }); @@ -109,7 +109,7 @@ if (node->numberOfOutputs() > 0) context.sourceNodeWillBeginPlayback(node); -context.audioWorklet().createProcessor(name, processorMessagePort->disentangle(), serializedOptions.releaseNonNull(), node); +context.audioWorklet().createProcessor(name, processorMessagePort.disentangle(), serializedOptions.releaseNonNull(), node); { // The node should be manually added to the automatic pull node list, even without a connect() call. Modified: trunk/Source/WebCore/bindings/js/JSMessageChannelCustom.cpp (286452 => 286453) --- trunk/Source/WebCore/bindings/js/JSMessageChannelCustom.cpp 2021-12-02 22:21:46 UTC (rev 286452) +++ trunk/Source/WebCore/bindings/js/JSMessageChannelCustom.cpp 2021-12-02 22:22:49 UTC (rev 286453) @@ -36,11 +36,8 @@ template void JSMessageChannel::visitAdditionalChildren(Visitor& visitor) { -if (MessagePort* port = wrapped().port1()) -visitor.addOpaqueRoot(port); - -if (MessagePort* port = wrapped().port2()) -visitor.addOpaqueRoot(port); +visitor.addOpaqueRoot(().port1()); +visitor.addOpaqueRoot(().port2()); } DEFINE_VISIT_ADDITIONAL_CHILDREN(JSMessageChannel); Modified: trunk/Source/WebCore/dom/MessageChannel.cpp (286452 => 286453) --- trunk/Source/WebCore/dom/MessageChannel.cpp 2021-12-02 22:21:46 UTC (rev 286452) +++ trunk/Source/WebCore/dom/MessageChannel.cpp 2021-12-02 22:22:49 UTC (rev 286453) @@ -33,6 +33,14 @@ namespace WebCore { +static std::pair, Ref> generateMessagePorts(ScriptExecutionContext& context) +{ +MessagePortIdentifier id1 = { Process::identifier(), ObjectIdentifier::generate() }; +MessagePortIdentifier id2 = {
[webkit-changes] [286452] trunk
Title: [286452] trunk Revision 286452 Author drou...@apple.com Date 2021-12-02 14:21:46 -0800 (Thu, 02 Dec 2021) Log Message [Payment Request] Validate payment method data on construction https://bugs.webkit.org/show_bug.cgi?id=233292 Reviewed by Andy Estes. Source/WebCore: This will allow developers to replace any `ApplePaySession.supportsVersion` check(s) by attempting to create a `PaymentRequest` object with data specific to Apple Pay. This is actually an improvement, because it'll also allow developers to catch most errors in that data earlier, as previously any errors would only be thrown when `show()` is called. Spec: Test: http/tests/ssl/applepay/PaymentRequest.https.html * Modules/paymentrequest/PaymentRequest.cpp: (WebCore::PaymentRequest::show): * Modules/paymentrequest/PaymentHandler.h: Adjust `PaymentHandler::convertData` to take a `Document` so that additional validation can be performed on the provided payment method(s) (e.g. check the Apple Pay version). * Modules/applepay/PaymentRequestValidator.h: * Modules/applepay/PaymentRequestValidator.mm: (WebCore::PaymentRequestValidator::validate): Allow callers to choose what fields to validate. This is needed because when the `ApplePaySessionPaymentRequest` created/converted when validating the payment method data in the `PaymentRequest` constructor isn't able to get fields from the `PaymentRequest` as it hasn't been created yet. * Modules/applepay/ApplePaySession.cpp: (WebCore::convertAndValidate): * Modules/applepay/paymentrequest/ApplePayPaymentHandler.h: * Modules/applepay/paymentrequest/ApplePayPaymentHandler.cpp: (WebCore::convertAndValidateApplePayRequest): (WebCore::ApplePayPaymentHandler::convertData): (WebCore::ApplePayPaymentHandler::show): * Modules/applepay-ams-ui/ApplePayAMSUIPaymentHandler.h: * Modules/applepay-ams-ui/ApplePayAMSUIPaymentHandler.cpp: (WebCore::convertAndValidateApplePayAMSUIRequest): (WebCore::ApplePayAMSUIPaymentHandler::convertData): LayoutTests: * http/tests/ssl/applepay/PaymentRequest.https.html: * http/tests/ssl/applepay/PaymentRequest.https-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/ssl/applepay/PaymentRequest.https-expected.txt trunk/LayoutTests/http/tests/ssl/applepay/PaymentRequest.https.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/applepay/ApplePaySession.cpp trunk/Source/WebCore/Modules/applepay/PaymentRequestValidator.h trunk/Source/WebCore/Modules/applepay/PaymentRequestValidator.mm trunk/Source/WebCore/Modules/applepay/paymentrequest/ApplePayPaymentHandler.cpp trunk/Source/WebCore/Modules/applepay/paymentrequest/ApplePayPaymentHandler.h trunk/Source/WebCore/Modules/applepay-ams-ui/ApplePayAMSUIPaymentHandler.cpp trunk/Source/WebCore/Modules/applepay-ams-ui/ApplePayAMSUIPaymentHandler.h trunk/Source/WebCore/Modules/paymentrequest/PaymentHandler.h trunk/Source/WebCore/Modules/paymentrequest/PaymentRequest.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286451 => 286452) --- trunk/LayoutTests/ChangeLog 2021-12-02 21:51:08 UTC (rev 286451) +++ trunk/LayoutTests/ChangeLog 2021-12-02 22:21:46 UTC (rev 286452) @@ -1,3 +1,14 @@ +2021-12-02 Devin Rousso + +[Payment Request] Validate payment method data on construction +https://bugs.webkit.org/show_bug.cgi?id=233292 + + +Reviewed by Andy Estes. + +* http/tests/ssl/applepay/PaymentRequest.https.html: +* http/tests/ssl/applepay/PaymentRequest.https-expected.txt: + 2021-12-02 Fujii Hironori [WinCairo] Unreviewed test gardening Modified: trunk/LayoutTests/http/tests/ssl/applepay/PaymentRequest.https-expected.txt (286451 => 286452) --- trunk/LayoutTests/http/tests/ssl/applepay/PaymentRequest.https-expected.txt 2021-12-02 21:51:08 UTC (rev 286451) +++ trunk/LayoutTests/http/tests/ssl/applepay/PaymentRequest.https-expected.txt 2021-12-02 22:21:46 UTC (rev 286452) @@ -10,32 +10,33 @@ Testing ApplePayRequest.version -SETUP: paymentMethod = validPaymentMethod(); paymentMethod.data.version = 0; request = new PaymentRequest([paymentMethod], validPaymentDetails()) -PASS request.show() rejected promise with InvalidAccessError: "0" is not a supported version.. -SETUP: paymentMethod = validPaymentMethod(); paymentMethod.data.version = 1000; request = new PaymentRequest([paymentMethod], validPaymentDetails()) -PASS request.show() rejected promise with InvalidAccessError: "1000" is not a supported version.. +SETUP: paymentMethod = validPaymentMethod(); paymentMethod.data.version = 0; +PASS new PaymentRequest([paymentMethod], validPaymentDetails()) threw exception InvalidAccessError: "0" is not a supported version.. +SETUP: paymentMethod = validPaymentMethod(); paymentMethod.data.version = 1000; +PASS new PaymentRequest([paymentMethod], validPaymentDetails()) threw exception InvalidAccessError: "1000" is not a supported version.. + + Testing ApplePayRequest.countryCode SETUP: paymentMethod =
[webkit-changes] [286451] trunk/LayoutTests
Title: [286451] trunk/LayoutTests Revision 286451 Author hironori.fu...@sony.com Date 2021-12-02 13:51:08 -0800 (Thu, 02 Dec 2021) Log Message [WinCairo] Unreviewed test gardening * platform/wincairo-wk1/TestExpectations: * platform/wincairo/TestExpectations: * platform/wincairo/fast/box-shadow/basic-shadows-expected.txt: * platform/wincairo/fast/dom/52776-expected.txt: * platform/wincairo/fast/text/atsui-rtl-override-selection-expected.txt: * platform/wincairo/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt: * platform/wincairo/fast/text/international/bidi-ignored-for-first-child-inline-expected.txt: * platform/wincairo/fast/text/international/bidi-neutral-run-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/wincairo/TestExpectations trunk/LayoutTests/platform/wincairo/fast/box-shadow/basic-shadows-expected.txt trunk/LayoutTests/platform/wincairo/fast/dom/52776-expected.txt trunk/LayoutTests/platform/wincairo/fast/text/atsui-rtl-override-selection-expected.txt trunk/LayoutTests/platform/wincairo/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt trunk/LayoutTests/platform/wincairo/fast/text/international/bidi-ignored-for-first-child-inline-expected.txt trunk/LayoutTests/platform/wincairo/fast/text/international/bidi-neutral-run-expected.txt trunk/LayoutTests/platform/wincairo-wk1/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (286450 => 286451) --- trunk/LayoutTests/ChangeLog 2021-12-02 21:33:49 UTC (rev 286450) +++ trunk/LayoutTests/ChangeLog 2021-12-02 21:51:08 UTC (rev 286451) @@ -1,3 +1,16 @@ +2021-12-02 Fujii Hironori + +[WinCairo] Unreviewed test gardening + +* platform/wincairo-wk1/TestExpectations: +* platform/wincairo/TestExpectations: +* platform/wincairo/fast/box-shadow/basic-shadows-expected.txt: +* platform/wincairo/fast/dom/52776-expected.txt: +* platform/wincairo/fast/text/atsui-rtl-override-selection-expected.txt: +* platform/wincairo/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt: +* platform/wincairo/fast/text/international/bidi-ignored-for-first-child-inline-expected.txt: +* platform/wincairo/fast/text/international/bidi-neutral-run-expected.txt: + 2021-12-02 Tim Nguyen Fix crash in GraphicsContextCG::endTransparencyLayer Modified: trunk/LayoutTests/platform/wincairo/TestExpectations (286450 => 286451) --- trunk/LayoutTests/platform/wincairo/TestExpectations 2021-12-02 21:33:49 UTC (rev 286450) +++ trunk/LayoutTests/platform/wincairo/TestExpectations 2021-12-02 21:51:08 UTC (rev 286451) @@ -2049,12 +2049,10 @@ storage/indexeddb/structured-clone-image-data-display-p3.html [ Failure ] storage/indexeddb/value-cursor-cycle.html [ Failure Pass ] webgl/1.0.3/conformance/context/premultiplyalpha-test.html [ Failure ] -webgl/1.0.3/conformance/extensions/oes-element-index-uint.html [ Failure ] webgl/1.0.3/conformance/glsl/bugs/array-of-struct-with-int-first-position.html [ Skip ] # This test makes DumpRenderTree process unable to exit webgl/1.0.3/conformance/more/functions/readPixelsBadArgs.html [ Failure ] webgl/1.0.3/conformance/more/functions/texImage2DHTML.html [ Failure ] webgl/1.0.3/conformance/more/functions/texSubImage2DHTML.html [ Failure ] -webgl/1.0.3/conformance/textures/default-texture.html [ Failure ] webgl/1.0.3/conformance/textures/texture-mips.html [ Pass Failure ] webgl/1.0.3/conformance/textures/texture-upload-size.html [ Skip ] # Timeout webgl/1.0.3/conformance/uniforms/out-of-bounds-uniform-array-access.html [ Skip ] # Timeout @@ -2068,7 +2066,6 @@ webgl/2.0.0/conformance/glsl/bugs/qualcomm-crash.html [ Skip ] # Flaky timeout if it runs with other tests webgl/2.0.0/conformance/glsl/bugs/qualcomm-loop-with-continue-crash.html [ Skip ] # Flaky timeout if it runs with other tests webgl/2.0.0/conformance/glsl/bugs/sketchfab-lighting-shader-crash.html [ Skip ] # Flaky timeout if it runs with other tests -webgl/2.0.0/conformance/textures/misc/default-texture.html [ Failure ] webgl/2.0.0/conformance/textures/misc/texture-mips.html [ Failure Pass ] webgl/2.0.0/conformance/textures/misc/texture-upload-size.html [ Skip ] # Timeout webgl/2.0.0/conformance/uniforms/out-of-bounds-uniform-array-access.html [ Skip ] # Timeout @@ -2079,7 +2076,6 @@ webgl/2.0.0/conformance2/query/occlusion-query.html [ Skip ] # Timeout webgl/2.0.0/conformance2/rendering/blitframebuffer-filter-srgb.html [ Pass Failure ] webgl/2.0.0/conformance2/rendering/blitframebuffer-stencil-only.html [ Pass Failure ] -webgl/2.0.0/conformance2/rendering/element-index-uint.html [ Failure ] webgl/2.0.0/conformance2/rendering/fs-color-type-mismatch-color-buffer-type.html [ Failure ] webgl/2.0.0/conformance2/state/gl-object-get-calls.html [ Slow Failure ] webgl/2.0.0/conformance2/textures/misc/tex-image-with-bad-args-from-dom-elements.html [ Skip ] # Timeout @@ -2106,5 +2102,3 @@
[webkit-changes] [286450] trunk
Title: [286450] trunk Revision 286450 Author wenson_hs...@apple.com Date 2021-12-02 13:33:49 -0800 (Thu, 02 Dec 2021) Log Message [ Monterey ] fast/images/text-recognition/mac/image-overlay-text-disables-app-highlight-menu-items.html (layout-test) is a constant text failure https://bugs.webkit.org/show_bug.cgi?id=233658 rdar://problem/85886424 Reviewed by Tim Horton. Source/WTF: Define ENABLE_APP_HIGHLIGHTS for iOS 15+ and macOS Monterey+. This ensures that `internals.appHighlightContextMenuItemTitles` is defined in layout tests on Monterey. * wtf/PlatformEnableCocoa.h: Tools: Add a forward declaration for open source builds. * TestWebKitAPI/ios/UIKitSPI.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformEnableCocoa.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/ios/UIKitSPI.h Diff Modified: trunk/Source/WTF/ChangeLog (286449 => 286450) --- trunk/Source/WTF/ChangeLog 2021-12-02 21:26:40 UTC (rev 286449) +++ trunk/Source/WTF/ChangeLog 2021-12-02 21:33:49 UTC (rev 286450) @@ -1,3 +1,16 @@ +2021-12-02 Wenson Hsieh + +[ Monterey ] fast/images/text-recognition/mac/image-overlay-text-disables-app-highlight-menu-items.html (layout-test) is a constant text failure +https://bugs.webkit.org/show_bug.cgi?id=233658 +rdar://problem/85886424 + +Reviewed by Tim Horton. + +Define ENABLE_APP_HIGHLIGHTS for iOS 15+ and macOS Monterey+. This ensures that +`internals.appHighlightContextMenuItemTitles` is defined in layout tests on Monterey. + +* wtf/PlatformEnableCocoa.h: + 2021-12-02 Commit Queue Unreviewed, reverting r286437. Modified: trunk/Source/WTF/wtf/PlatformEnableCocoa.h (286449 => 286450) --- trunk/Source/WTF/wtf/PlatformEnableCocoa.h 2021-12-02 21:26:40 UTC (rev 286449) +++ trunk/Source/WTF/wtf/PlatformEnableCocoa.h 2021-12-02 21:33:49 UTC (rev 286450) @@ -716,6 +716,12 @@ #define ENABLE_APP_PRIVACY_REPORT 1 #endif +#if (!defined(ENABLE_APP_HIGHLIGHTS) && \ +(PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 12 \ +|| PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 15)) +#define ENABLE_APP_HIGHLIGHTS 1 +#endif + #if !defined(ENABLE_DESTINATION_COLOR_SPACE_DISPLAY_P3) #define ENABLE_DESTINATION_COLOR_SPACE_DISPLAY_P3 1 #endif Modified: trunk/Tools/ChangeLog (286449 => 286450) --- trunk/Tools/ChangeLog 2021-12-02 21:26:40 UTC (rev 286449) +++ trunk/Tools/ChangeLog 2021-12-02 21:33:49 UTC (rev 286450) @@ -1,3 +1,15 @@ +2021-12-02 Wenson Hsieh + +[ Monterey ] fast/images/text-recognition/mac/image-overlay-text-disables-app-highlight-menu-items.html (layout-test) is a constant text failure +https://bugs.webkit.org/show_bug.cgi?id=233658 +rdar://problem/85886424 + +Reviewed by Tim Horton. + +Add a forward declaration for open source builds. + +* TestWebKitAPI/ios/UIKitSPI.h: + 2021-12-02 Brady Eidson REGRESSION: r286075 [ Big Sur x86] 2 TestWebKitAPI.WebPushD (API-Tests) are constant failures Modified: trunk/Tools/TestWebKitAPI/ios/UIKitSPI.h (286449 => 286450) --- trunk/Tools/TestWebKitAPI/ios/UIKitSPI.h 2021-12-02 21:26:40 UTC (rev 286449) +++ trunk/Tools/TestWebKitAPI/ios/UIKitSPI.h 2021-12-02 21:33:49 UTC (rev 286450) @@ -140,6 +140,7 @@ @interface UICalloutBar : UIView + (UICalloutBar *)sharedCalloutBar; ++ (UICalloutBar *)activeCalloutBar; @end @interface _UINavigationInteractiveTransitionBase : UIPercentDrivenInteractiveTransition ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286449] trunk/Source/WebCore
Title: [286449] trunk/Source/WebCore Revision 286449 Author commit-qu...@webkit.org Date 2021-12-02 13:26:40 -0800 (Thu, 02 Dec 2021) Log Message Verify borderRect is Renderable https://bugs.webkit.org/show_bug.cgi?id=232650 Patch by Brandon Stewart on 2021-12-02 Reviewed by Alan Bujtas. Verify that borderRect is renderable. Align isRenderable() implementations in RoundedRect and FloatRoundedRect. * platform/graphics/RoundedRect.cpp: (WebCore::RoundedRect::isRenderable const): * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintBoxShadow): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/RoundedRect.cpp trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286448 => 286449) --- trunk/Source/WebCore/ChangeLog 2021-12-02 21:25:35 UTC (rev 286448) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 21:26:40 UTC (rev 286449) @@ -1,3 +1,18 @@ +2021-12-02 Brandon Stewart + +Verify borderRect is Renderable +https://bugs.webkit.org/show_bug.cgi?id=232650 + +Reviewed by Alan Bujtas. + +Verify that borderRect is renderable. +Align isRenderable() implementations in RoundedRect and FloatRoundedRect. + +* platform/graphics/RoundedRect.cpp: +(WebCore::RoundedRect::isRenderable const): +* rendering/RenderBoxModelObject.cpp: +(WebCore::RenderBoxModelObject::paintBoxShadow): + 2021-12-02 Alan Bujtas [LFC][IFC] Redundant line run type checking in InlineDisplayContentBuilder::processNonBidiContent Modified: trunk/Source/WebCore/platform/graphics/RoundedRect.cpp (286448 => 286449) --- trunk/Source/WebCore/platform/graphics/RoundedRect.cpp 2021-12-02 21:25:35 UTC (rev 286448) +++ trunk/Source/WebCore/platform/graphics/RoundedRect.cpp 2021-12-02 21:26:40 UTC (rev 286449) @@ -165,7 +165,11 @@ bool RoundedRect::isRenderable() const { -return m_radii.topLeft().width() + m_radii.topRight().width() <= m_rect.width() +return m_radii.topLeft().width() >= 0 && m_radii.topLeft().height() >= 0 +&& m_radii.bottomLeft().width() >= 0 && m_radii.bottomLeft().height() >= 0 +&& m_radii.topRight().width() >= 0 && m_radii.topRight().height() >= 0 +&& m_radii.bottomRight().width() >= 0 && m_radii.bottomRight().height() >= 0 +&& m_radii.topLeft().width() + m_radii.topRight().width() <= m_rect.width() && m_radii.bottomLeft().width() + m_radii.bottomRight().width() <= m_rect.width() && m_radii.topLeft().height() + m_radii.bottomLeft().height() <= m_rect.height() && m_radii.topRight().height() + m_radii.bottomRight().height() <= m_rect.height(); Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp (286448 => 286449) --- trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp 2021-12-02 21:25:35 UTC (rev 286448) +++ trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp 2021-12-02 21:26:40 UTC (rev 286449) @@ -2422,6 +2422,9 @@ RoundedRect borderRect = (shadowStyle == ShadowStyle::Inset) ? style.getRoundedInnerBorderFor(paintRect, includeLogicalLeftEdge, includeLogicalRightEdge) : style.getRoundedBorderFor(paintRect, includeLogicalLeftEdge, includeLogicalRightEdge); +if (!borderRect.isRenderable()) +borderRect.adjustRadii(); + bool hasBorderRadius = style.hasBorderRadius(); float deviceScaleFactor = document().deviceScaleFactor(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286448] trunk/Source/WebCore
Title: [286448] trunk/Source/WebCore Revision 286448 Author za...@apple.com Date 2021-12-02 13:25:35 -0800 (Thu, 02 Dec 2021) Log Message [LFC][IFC] Redundant line run type checking in InlineDisplayContentBuilder::processNonBidiContent https://bugs.webkit.org/show_bug.cgi?id=233597 Reviewed by Antti Koivisto. * layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: (WebCore::Layout::InlineDisplayContentBuilder::processNonBidiContent): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286447 => 286448) --- trunk/Source/WebCore/ChangeLog 2021-12-02 21:13:02 UTC (rev 286447) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 21:25:35 UTC (rev 286448) @@ -1,3 +1,13 @@ +2021-12-02 Alan Bujtas + +[LFC][IFC] Redundant line run type checking in InlineDisplayContentBuilder::processNonBidiContent +https://bugs.webkit.org/show_bug.cgi?id=233597 + +Reviewed by Antti Koivisto. + +* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: +(WebCore::Layout::InlineDisplayContentBuilder::processNonBidiContent): + 2021-12-02 Andreu Botella Remove the multipart parameter to FormAssociatedElement::appendFormData, InputType::appendFormData and HTMLFormElement::constructEntryList Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286447 => 286448) --- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-02 21:13:02 UTC (rev 286447) +++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-02 21:25:35 UTC (rev 286448) @@ -286,43 +286,37 @@ { // Create the inline boxes on the current line. This is mostly text and atomic inline boxes. for (auto& lineRun : lineContent.runs) { +auto& layoutBox = lineRun.layoutBox(); -auto displayBoxRect = [&] { -auto& layoutBox = lineRun.layoutBox(); -auto logicalRect = InlineRect { }; - -if (lineRun.isText() || lineRun.isSoftLineBreak()) -logicalRect = lineBox.logicalRectForTextRun(lineRun); -else if (lineRun.isHardLineBreak()) -logicalRect = lineBox.logicalRectForLineBreakBox(layoutBox); -else if (lineRun.isBox()) -logicalRect = lineBox.logicalBorderBoxForAtomicInlineLevelBox(layoutBox, formattingState().boxGeometry(layoutBox)); -else if (lineRun.isInlineBoxStart() || lineRun.isLineSpanningInlineBoxStart()) -logicalRect = lineBox.logicalBorderBoxForInlineBox(layoutBox, formattingState().boxGeometry(layoutBox)); -else -ASSERT_NOT_REACHED(); +auto logicalRectRelativeToRoot = [&](auto logicalRect) { logicalRect.moveBy(lineBoxLogicalTopLeft); return logicalRect; }; if (lineRun.isText()) { -appendTextDisplayBox(lineRun, displayBoxRect(), boxes); +appendTextDisplayBox(lineRun, logicalRectRelativeToRoot(lineBox.logicalRectForTextRun(lineRun)), boxes); continue; } if (lineRun.isSoftLineBreak()) { -appendSoftLineBreakDisplayBox(lineRun, displayBoxRect(), boxes); +appendSoftLineBreakDisplayBox(lineRun, logicalRectRelativeToRoot(lineBox.logicalRectForTextRun(lineRun)), boxes); continue; } if (lineRun.isHardLineBreak()) { -appendHardLineBreakDisplayBox(lineRun, displayBoxRect(), boxes); +appendHardLineBreakDisplayBox(lineRun, logicalRectRelativeToRoot(lineBox.logicalRectForLineBreakBox(layoutBox)), boxes); continue; } if (lineRun.isBox()) { -appendAtomicInlineLevelDisplayBox(lineRun, displayBoxRect(), boxes); +appendAtomicInlineLevelDisplayBox(lineRun +, logicalRectRelativeToRoot(lineBox.logicalBorderBoxForAtomicInlineLevelBox(layoutBox, formattingState().boxGeometry(layoutBox))) +, boxes); continue; } if (lineRun.isInlineBoxStart()) { -appendInlineBoxDisplayBox(lineRun, lineBox.inlineLevelBoxForLayoutBox(lineRun.layoutBox()), displayBoxRect(), lineBox.hasContent(), boxes); +appendInlineBoxDisplayBox(lineRun +, lineBox.inlineLevelBoxForLayoutBox(lineRun.layoutBox()) +, logicalRectRelativeToRoot(lineBox.logicalBorderBoxForInlineBox(layoutBox, formattingState().boxGeometry(layoutBox))) +, lineBox.hasContent() +, boxes); continue; } if (lineRun.isLineSpanningInlineBoxStart()) { @@ -332,7 +326,10 @@ // don't extend the spanning line box over to this line -also there is no next line in cases like this. continue; }
[webkit-changes] [286447] trunk/Source/WebCore
Title: [286447] trunk/Source/WebCore Revision 286447 Author commit-qu...@webkit.org Date 2021-12-02 13:13:02 -0800 (Thu, 02 Dec 2021) Log Message Remove the multipart parameter to FormAssociatedElement::appendFormData, InputType::appendFormData and HTMLFormElement::constructEntryList https://bugs.webkit.org/show_bug.cgi?id=233774 Patch by Andreu Botella on 2021-12-02 Reviewed by Chris Dumez. These parameters were only needed because of an optimization where file inputs were being added to the DOMFormData as string values containing their filenames if the entry list was being constructed to be used in a urlencoded or text/plain form submission. This optimization was removed in r286427 and those parameters can now be dropped. No behavior change. * html/BaseButtonInputType.cpp: (WebCore::BaseButtonInputType::appendFormData const): * html/BaseButtonInputType.h: * html/BaseCheckableInputType.cpp: (WebCore::BaseCheckableInputType::appendFormData const): * html/BaseCheckableInputType.h: * html/DOMFormData.cpp: (WebCore::DOMFormData::create): * html/FileInputType.cpp: (WebCore::FileInputType::appendFormData const): * html/FileInputType.h: * html/FormAssociatedElement.h: (WebCore::FormAssociatedElement::appendFormData): * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::appendFormData): * html/HTMLButtonElement.h: * html/HTMLFormControlElement.h: * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::constructEntryList): * html/HTMLFormElement.h: * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::appendFormData): * html/HTMLInputElement.h: * html/HTMLKeygenElement.cpp: (WebCore::HTMLKeygenElement::appendFormData): * html/HTMLKeygenElement.h: * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::appendFormData): * html/HTMLObjectElement.h: * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::appendFormData): * html/HTMLSelectElement.h: * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::appendFormData): * html/HTMLTextAreaElement.h: * html/HiddenInputType.cpp: (WebCore::HiddenInputType::appendFormData const): * html/HiddenInputType.h: * html/ImageInputType.cpp: (WebCore::ImageInputType::appendFormData const): * html/ImageInputType.h: * html/InputType.cpp: (WebCore::InputType::appendFormData const): * html/InputType.h: * html/SubmitInputType.cpp: (WebCore::SubmitInputType::appendFormData const): * html/SubmitInputType.h: * html/TextFieldInputType.cpp: (WebCore::TextFieldInputType::appendFormData const): * html/TextFieldInputType.h: * loader/FormSubmission.cpp: (WebCore::FormSubmission::create): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/BaseButtonInputType.cpp trunk/Source/WebCore/html/BaseButtonInputType.h trunk/Source/WebCore/html/BaseCheckableInputType.cpp trunk/Source/WebCore/html/BaseCheckableInputType.h trunk/Source/WebCore/html/DOMFormData.cpp trunk/Source/WebCore/html/FileInputType.cpp trunk/Source/WebCore/html/FileInputType.h trunk/Source/WebCore/html/FormAssociatedElement.h trunk/Source/WebCore/html/HTMLButtonElement.cpp trunk/Source/WebCore/html/HTMLButtonElement.h trunk/Source/WebCore/html/HTMLFormControlElement.h trunk/Source/WebCore/html/HTMLFormElement.cpp trunk/Source/WebCore/html/HTMLFormElement.h trunk/Source/WebCore/html/HTMLInputElement.cpp trunk/Source/WebCore/html/HTMLInputElement.h trunk/Source/WebCore/html/HTMLKeygenElement.cpp trunk/Source/WebCore/html/HTMLKeygenElement.h trunk/Source/WebCore/html/HTMLObjectElement.cpp trunk/Source/WebCore/html/HTMLObjectElement.h trunk/Source/WebCore/html/HTMLSelectElement.cpp trunk/Source/WebCore/html/HTMLSelectElement.h trunk/Source/WebCore/html/HTMLTextAreaElement.cpp trunk/Source/WebCore/html/HTMLTextAreaElement.h trunk/Source/WebCore/html/HiddenInputType.cpp trunk/Source/WebCore/html/HiddenInputType.h trunk/Source/WebCore/html/ImageInputType.cpp trunk/Source/WebCore/html/ImageInputType.h trunk/Source/WebCore/html/InputType.cpp trunk/Source/WebCore/html/InputType.h trunk/Source/WebCore/html/SubmitInputType.cpp trunk/Source/WebCore/html/SubmitInputType.h trunk/Source/WebCore/html/TextFieldInputType.cpp trunk/Source/WebCore/html/TextFieldInputType.h trunk/Source/WebCore/loader/FormSubmission.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286446 => 286447) --- trunk/Source/WebCore/ChangeLog 2021-12-02 21:04:38 UTC (rev 286446) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 21:13:02 UTC (rev 286447) @@ -1,3 +1,70 @@ +2021-12-02 Andreu Botella + +Remove the multipart parameter to FormAssociatedElement::appendFormData, InputType::appendFormData and HTMLFormElement::constructEntryList +https://bugs.webkit.org/show_bug.cgi?id=233774 + +Reviewed by Chris Dumez. + +These parameters were only needed because of an optimization where file inputs were being +added to the DOMFormData as string values containing their filenames if the entry list was +being constructed to be used in a urlencoded or text/plain form submission. This
[webkit-changes] [286446] trunk/Source/WebCore
Title: [286446] trunk/Source/WebCore Revision 286446 Author za...@apple.com Date 2021-12-02 13:04:38 -0800 (Thu, 02 Dec 2021) Log Message [LFC][IFC] Introduce createDisplayBoxesInVisualOrderForContentRuns https://bugs.webkit.org/show_bug.cgi?id=233733 Reviewed by Antti Koivisto. Revert some of the inline box related bidi changes and start with a very simple "let's create the display boxes for all _content_ runs in visual order". This is very similar to InlineDisplayContentBuilder::processNonBidiContent() where we just loop through the content and construct display boxes. This is also in preparation for advancing with the inline box case. * layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: (WebCore::Layout::InlineDisplayContentBuilder::processNonBidiContent): (WebCore::Layout::InlineDisplayContentBuilder::processBidiContent): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286445 => 286446) --- trunk/Source/WebCore/ChangeLog 2021-12-02 20:22:40 UTC (rev 286445) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 21:04:38 UTC (rev 286446) @@ -1,5 +1,22 @@ 2021-12-02 Alan Bujtas +[LFC][IFC] Introduce createDisplayBoxesInVisualOrderForContentRuns +https://bugs.webkit.org/show_bug.cgi?id=233733 + +Reviewed by Antti Koivisto. + +Revert some of the inline box related bidi changes and start with +a very simple "let's create the display boxes for all _content_ runs in visual order". +This is very similar to InlineDisplayContentBuilder::processNonBidiContent() where we just +loop through the content and construct display boxes. +This is also in preparation for advancing with the inline box case. + +* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: +(WebCore::Layout::InlineDisplayContentBuilder::processNonBidiContent): +(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent): + +2021-12-02 Alan Bujtas + [LFC][IFC] Move inline box geometry (BoxGeometry) update logic to a dedicated function https://bugs.webkit.org/show_bug.cgi?id=233615 Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286445 => 286446) --- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-02 20:22:40 UTC (rev 286445) +++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-02 21:04:38 UTC (rev 286446) @@ -282,7 +282,7 @@ UNUSED_PARAM(inlineBoxRect); } -void InlineDisplayContentBuilder::processNonBidiContent(const LineBuilder::LineContent& lineContent, const LineBox& lineBox, const InlineLayoutPoint& lineBoxLogicalTopLeft, DisplayBoxes& boxes) +void InlineDisplayContentBuilder::processNonBidiContent(const LineBuilder::LineContent& lineContent, const LineBox& lineBox, const InlineLayoutPoint& lineBoxLogicalTopLeft, DisplayBoxes& boxes) { // Create the inline boxes on the current line. This is mostly text and atomic inline boxes. for (auto& lineRun : lineContent.runs) { @@ -341,118 +341,65 @@ void InlineDisplayContentBuilder::processBidiContent(const LineBuilder::LineContent& lineContent, const LineBox& lineBox, const InlineLayoutPoint& lineBoxLogicalTopLeft, DisplayBoxes& boxes) { -// Create the inline boxes on the current line. This is mostly text and atomic inline boxes. -auto& runs = lineContent.runs; -ASSERT(lineContent.visualOrderList.size() == runs.size()); +ASSERT(lineContent.visualOrderList.size() == lineContent.runs.size()); -auto rootInlineBoxRect = lineBox.logicalRectForRootInlineBox(); -auto contentRightInVisualOrder = lineBoxLogicalTopLeft.x(); -// First visual run's initial content position depends on the block's inline direction. -if (!root().style().isLeftToRightDirection()) { -// FIXME: This needs the block end position instead of the lineLogicalWidth. -contentRightInVisualOrder += lineContent.lineLogicalWidth - rootInlineBoxRect.width(); -} -// Adjust the content start position with the (text)alignment offset (root inline box has the alignment offset and not the individual runs). -contentRightInVisualOrder += rootInlineBoxRect.left(); -Vector inlineBoxStack; -inlineBoxStack.reserveInitialCapacity(lineBox.nonRootInlineLevelBoxes().size()); +auto createDisplayBoxesInVisualOrderForContentRuns = [&] { +auto rootInlineBoxRect = lineBox.logicalRectForRootInlineBox(); +auto contentRightInVisualOrder = InlineLayoutUnit { }; +// First visual run's initial content position depends on the block's inline direction. +if (!root().style().isLeftToRightDirection()) { +// FIXME: This needs the block end position instead of the lineLogicalWidth. +
[webkit-changes] [286445] trunk/Source/WebCore
Title: [286445] trunk/Source/WebCore Revision 286445 Author za...@apple.com Date 2021-12-02 12:22:40 -0800 (Thu, 02 Dec 2021) Log Message [LFC][IFC] Move inline box geometry (BoxGeometry) update logic to a dedicated function https://bugs.webkit.org/show_bug.cgi?id=233615 Reviewed by Antti Koivisto. This is also in preparation for computing the BoxGeometry for bidi inline boxes. * layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: (WebCore::Layout::InlineDisplayContentBuilder::setInlineBoxGeometry): (WebCore::Layout::InlineDisplayContentBuilder::appendInlineBoxDisplayBox): (WebCore::Layout::InlineDisplayContentBuilder::appendSpanningInlineBoxDisplayBox): * layout/formattingContexts/inline/InlineDisplayContentBuilder.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.h Diff Modified: trunk/Source/WebCore/ChangeLog (286444 => 286445) --- trunk/Source/WebCore/ChangeLog 2021-12-02 20:09:02 UTC (rev 286444) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 20:22:40 UTC (rev 286445) @@ -1,3 +1,18 @@ +2021-12-02 Alan Bujtas + +[LFC][IFC] Move inline box geometry (BoxGeometry) update logic to a dedicated function +https://bugs.webkit.org/show_bug.cgi?id=233615 + +Reviewed by Antti Koivisto. + +This is also in preparation for computing the BoxGeometry for bidi inline boxes. + +* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: +(WebCore::Layout::InlineDisplayContentBuilder::setInlineBoxGeometry): +(WebCore::Layout::InlineDisplayContentBuilder::appendInlineBoxDisplayBox): +(WebCore::Layout::InlineDisplayContentBuilder::appendSpanningInlineBoxDisplayBox): +* layout/formattingContexts/inline/InlineDisplayContentBuilder.h: + 2021-12-02 Chris Dumez html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change.html WPT test is failing Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286444 => 286445) --- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-02 20:09:02 UTC (rev 286444) +++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-02 20:22:40 UTC (rev 286445) @@ -192,6 +192,23 @@ adjustParentInlineBoxInkOverflow(); } +void InlineDisplayContentBuilder::setInlineBoxGeometry(const Box& layoutBox, const InlineRect& rect, bool isFirstInlineBoxFragment) +{ +auto adjustedSize = LayoutSize { LayoutUnit::fromFloatCeil(rect.width()), LayoutUnit::fromFloatCeil(rect.height()) }; +auto adjustedRect = Rect { LayoutPoint { rect.topLeft() }, adjustedSize }; +auto& boxGeometry = formattingState().boxGeometry(layoutBox); +if (!isFirstInlineBoxFragment) { +auto enclosingBorderBoxRect = BoxGeometry::borderBoxRect(boxGeometry); +enclosingBorderBoxRect.expandToContain(adjustedRect); +adjustedRect = enclosingBorderBoxRect; +} +boxGeometry.setLogicalTopLeft(adjustedRect.topLeft()); +auto contentBoxHeight = adjustedRect.height() - (boxGeometry.verticalBorder() + boxGeometry.verticalPadding().value_or(0_lu)); +auto contentBoxWidth = adjustedRect.width() - (boxGeometry.horizontalBorder() + boxGeometry.horizontalPadding().value_or(0_lu)); +boxGeometry.setContentBoxHeight(contentBoxHeight); +boxGeometry.setContentBoxWidth(contentBoxWidth); +} + void InlineDisplayContentBuilder::appendInlineBoxDisplayBox(const Line::Run& lineRun, const InlineLevelBox& inlineBox, const InlineRect& inlineBoxBorderBox, bool linehasContent, DisplayBoxes& boxes) { ASSERT(lineRun.layoutBox().isInlineBox()); @@ -221,14 +238,7 @@ } // This inline box showed up first on this line. -auto inlineBoxSize = LayoutSize { LayoutUnit::fromFloatCeil(inlineBoxBorderBox.width()), LayoutUnit::fromFloatCeil(inlineBoxBorderBox.height()) }; -auto logicalRect = Rect { LayoutPoint { inlineBoxBorderBox.topLeft() }, inlineBoxSize }; -auto& boxGeometry = formattingState().boxGeometry(layoutBox); -boxGeometry.setLogicalTopLeft(logicalRect.topLeft()); -auto contentBoxHeight = logicalRect.height() - (boxGeometry.verticalBorder() + boxGeometry.verticalPadding().value_or(0_lu)); -boxGeometry.setContentBoxHeight(contentBoxHeight); -auto contentBoxWidth = logicalRect.width() - (boxGeometry.horizontalBorder() + boxGeometry.horizontalPadding().value_or(0_lu)); -boxGeometry.setContentBoxWidth(contentBoxWidth); +setInlineBoxGeometry(layoutBox, inlineBoxBorderBox, true); } void InlineDisplayContentBuilder::appendSpanningInlineBoxDisplayBox(const Line::Run& lineRun, const InlineLevelBox& inlineBox, const InlineRect& inlineBoxBorderBox, DisplayBoxes& boxes) @@ -255,16 +265,8 @@ , inlineBox.hasContent() ,
[webkit-changes] [286444] trunk
Title: [286444] trunk Revision 286444 Author cdu...@apple.com Date 2021-12-02 12:09:02 -0800 (Thu, 02 Dec 2021) Log Message html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change.html WPT test is failing https://bugs.webkit.org/show_bug.cgi?id=233765 Reviewed by Darin Adler. LayoutTests/imported/w3c: Rebaseline WPT test that is now passing. * web-platform-tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change-expected.txt: Source/WebCore: Per https://html.spec.whatwg.org/#concept-input-min-zero, step base needs to be computed based on the 'min' attribute, then fallback to the 'value' attribute and finally fallback to the default step base. WebKit was missing the "fallback to the 'value' attribute logic. No new tests, rebaselined existing test. * html/NumberInputType.cpp: (WebCore::NumberInputType::createStepRange const): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/NumberInputType.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286443 => 286444) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-02 19:54:16 UTC (rev 286443) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-02 20:09:02 UTC (rev 286444) @@ -1,3 +1,14 @@ +2021-12-02 Chris Dumez + +html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change.html WPT test is failing +https://bugs.webkit.org/show_bug.cgi?id=233765 + +Reviewed by Darin Adler. + +Rebaseline WPT test that is now passing. + +* web-platform-tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change-expected.txt: + 2021-12-02 Antti Koivisto [:has() pseudo-class] Invalidation in non-subject position Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change-expected.txt (286443 => 286444) --- trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change-expected.txt 2021-12-02 19:54:16 UTC (rev 286443) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change-expected.txt 2021-12-02 20:09:02 UTC (rev 286444) @@ -1,4 +1,4 @@ -FAIL number input number validation is updated correctly after value attribute change which doesn't change input value assert_true: Input should be valid because step base is @value expected true got false +PASS number input number validation is updated correctly after value attribute change which doesn't change input value Modified: trunk/Source/WebCore/ChangeLog (286443 => 286444) --- trunk/Source/WebCore/ChangeLog 2021-12-02 19:54:16 UTC (rev 286443) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 20:09:02 UTC (rev 286444) @@ -1,3 +1,19 @@ +2021-12-02 Chris Dumez + +html/semantics/forms/constraints/input-number-validity-dynamic-value-no-change.html WPT test is failing +https://bugs.webkit.org/show_bug.cgi?id=233765 + +Reviewed by Darin Adler. + +Per https://html.spec.whatwg.org/#concept-input-min-zero, step base needs to be computed based on +the 'min' attribute, then fallback to the 'value' attribute and finally fallback to the default +step base. WebKit was missing the "fallback to the 'value' attribute logic. + +No new tests, rebaselined existing test. + +* html/NumberInputType.cpp: +(WebCore::NumberInputType::createStepRange const): + 2021-12-02 Tim Nguyen Fix crash in GraphicsContextCG::endTransparencyLayer Modified: trunk/Source/WebCore/html/NumberInputType.cpp (286443 => 286444) --- trunk/Source/WebCore/html/NumberInputType.cpp 2021-12-02 19:54:16 UTC (rev 286443) +++ trunk/Source/WebCore/html/NumberInputType.cpp 2021-12-02 20:09:02 UTC (rev 286444) @@ -147,7 +147,10 @@ static NeverDestroyed stepDescription(numberDefaultStep, numberDefaultStepBase, numberStepScaleFactor); ASSERT(element()); -const Decimal stepBase = parseToDecimalForNumberType(element()->attributeWithoutSynchronization(minAttr), numberDefaultStepBase); +Decimal stepBase = parseToDecimalForNumberType(element()->attributeWithoutSynchronization(minAttr), Decimal::nan()); +if (stepBase.isNaN()) +stepBase = parseToDecimalForNumberType(element()->attributeWithoutSynchronization(valueAttr), numberDefaultStepBase); + // FIXME: We should use numeric_limits::max for number input type. const Decimal floatMax = Decimal::fromDouble(std::numeric_limits::max()); const Element& element = *this->element(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org
[webkit-changes] [286443] branches/safari-612-branch
Title: [286443] branches/safari-612-branch Revision 286443 Author repst...@apple.com Date 2021-12-02 11:54:16 -0800 (Thu, 02 Dec 2021) Log Message Revert r286394. rdar://problem/83070565 Modified Paths branches/safari-612-branch/LayoutTests/ChangeLog branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/page/RuntimeEnabledFeatures.h Diff Modified: branches/safari-612-branch/LayoutTests/ChangeLog (286442 => 286443) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 19:54:12 UTC (rev 286442) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 19:54:16 UTC (rev 286443) @@ -1,5 +1,9 @@ 2021-12-02 Alan Coon +Revert r286394. rdar://problem/83070565 + +2021-12-02 Alan Coon + Revert r286395. rdar://problem/83070565 2021-12-01 Alan Coon Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286442 => 286443) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 19:54:12 UTC (rev 286442) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 19:54:16 UTC (rev 286443) @@ -1,5 +1,9 @@ 2021-12-02 Alan Coon +Revert r286394. rdar://problem/83070565 + +2021-12-02 Alan Coon + Revert r286395. rdar://problem/83070565 2021-12-01 Alan Coon Modified: branches/safari-612-branch/Source/WebCore/page/RuntimeEnabledFeatures.h (286442 => 286443) --- branches/safari-612-branch/Source/WebCore/page/RuntimeEnabledFeatures.h 2021-12-02 19:54:12 UTC (rev 286442) +++ branches/safari-612-branch/Source/WebCore/page/RuntimeEnabledFeatures.h 2021-12-02 19:54:16 UTC (rev 286443) @@ -290,7 +290,7 @@ bool m_attrStyleEnabled { false }; bool m_webAPIStatisticsEnabled { false }; bool m_syntheticEditingCommandsEnabled { true }; -bool m_dialogElementEnabled { true }; +bool m_dialogElementEnabled { false }; bool m_webSQLEnabled { false }; bool m_keygenElementEnabled { false }; bool m_pageAtRuleSupportEnabled { false }; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286442] branches/safari-612-branch
Title: [286442] branches/safari-612-branch Revision 286442 Author repst...@apple.com Date 2021-12-02 11:54:12 -0800 (Thu, 02 Dec 2021) Log Message Revert r286395. rdar://problem/83070565 Modified Paths branches/safari-612-branch/LayoutTests/ChangeLog branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/rendering/RenderLayer.cpp Removed Paths branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html Diff Modified: branches/safari-612-branch/LayoutTests/ChangeLog (286441 => 286442) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 19:49:47 UTC (rev 286441) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 19:54:12 UTC (rev 286442) @@ -1,3 +1,7 @@ +2021-12-02 Alan Coon + +Revert r286395. rdar://problem/83070565 + 2021-12-01 Alan Coon Cherry-pick r285320. rdar://problem/85943167 Deleted: branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt (286441 => 286442) --- branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt 2021-12-02 19:49:47 UTC (rev 286441) +++ branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt 2021-12-02 19:54:12 UTC (rev 286442) @@ -1 +0,0 @@ -PASS if this doesn't crash Deleted: branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html (286441 => 286442) --- branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html 2021-12-02 19:49:47 UTC (rev 286441) +++ branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html 2021-12-02 19:54:12 UTC (rev 286442) @@ -1,9 +0,0 @@ - -* { opacity: 0.1; translate: 1px; } - -PASS if this doesn't crash - -document.querySelector("dialog").showModal(); -if (testRunner) -testRunner.dumpAsText(); - Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286441 => 286442) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 19:49:47 UTC (rev 286441) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 19:54:12 UTC (rev 286442) @@ -1,3 +1,7 @@ +2021-12-02 Alan Coon + +Revert r286395. rdar://problem/83070565 + 2021-12-01 Alan Coon Cherry-pick r285320. rdar://problem/85943167 Modified: branches/safari-612-branch/Source/WebCore/rendering/RenderLayer.cpp (286441 => 286442) --- branches/safari-612-branch/Source/WebCore/rendering/RenderLayer.cpp 2021-12-02 19:49:47 UTC (rev 286441) +++ branches/safari-612-branch/Source/WebCore/rendering/RenderLayer.cpp 2021-12-02 19:54:12 UTC (rev 286442) @@ -2017,9 +2017,9 @@ if (isComposited()) return nullptr; -for (RenderLayer* curr = stackingContext(); curr; curr = curr->stackingContext()) { +for (RenderLayer* curr = parent(); curr; curr = curr->parent()) { if (curr->isComposited()) -break; +return nullptr; if (curr->isTransparent()) return curr; } @@ -3001,8 +3001,7 @@ // If we have a transparency layer enclosing us and we are the root of a transform, then we need to establish the transparency // layer from the parent now, assuming there is a parent if (paintFlags & PaintLayerFlag::HaveTransparency) { -// Top layer elements are not affected by ancestor opacities -if (!establishesTopLayer() && parent()) +if (parent()) parent()->beginTransparencyLayers(context, paintingInfo, paintingInfo.paintDirtyRect); else beginTransparencyLayers(context, paintingInfo, paintingInfo.paintDirtyRect); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286441] trunk
Title: [286441] trunk Revision 286441 Author ryanhad...@apple.com Date 2021-12-02 11:49:47 -0800 (Thu, 02 Dec 2021) Log Message Fix crash in GraphicsContextCG::endTransparencyLayer https://bugs.webkit.org/show_bug.cgi?id=230230 Patch by Tim Nguyen on 2021-12-02 Reviewed by Myles C. Maxfield. Source/WebCore: The crash was due to unbalanced calls to begin and end transparency layers. A branch handling ancestors of transparent layers that are transform root needed to be aware of the top layer. Opacity on ancestors don't affect top layer elements so calling `beginTransparencyLayers` on `parent()` is incorrect. Also fix `transparentPaintingAncestor()` to be top layer aware to avoid flickering layers while scrolling. Test: fast/layers/top-layer-ancestor-opacity-and-transform-crash.html * rendering/RenderLayer.cpp: (WebCore::RenderLayer::transparentPaintingAncestor): (WebCore::RenderLayer::paintLayerWithEffects): LayoutTests: * fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt: Added. * fast/layers/top-layer-ancestor-opacity-and-transform-crash.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderLayer.cpp Added Paths trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (286440 => 286441) --- trunk/LayoutTests/ChangeLog 2021-12-02 19:39:41 UTC (rev 286440) +++ trunk/LayoutTests/ChangeLog 2021-12-02 19:49:47 UTC (rev 286441) @@ -1,3 +1,13 @@ +2021-12-02 Tim Nguyen + +Fix crash in GraphicsContextCG::endTransparencyLayer +https://bugs.webkit.org/show_bug.cgi?id=230230 + +Reviewed by Myles C. Maxfield. + +* fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt: Added. +* fast/layers/top-layer-ancestor-opacity-and-transform-crash.html: Added. + 2021-12-02 Robert Jenner Unreviewed, reverting r285570. Added: trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt (0 => 286441) --- trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt (rev 0) +++ trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt 2021-12-02 19:49:47 UTC (rev 286441) @@ -0,0 +1 @@ +PASS if this doesn't crash Added: trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html (0 => 286441) --- trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html (rev 0) +++ trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html 2021-12-02 19:49:47 UTC (rev 286441) @@ -0,0 +1,9 @@ + +* { opacity: 0.1; translate: 1px; } + +PASS if this doesn't crash + +document.querySelector("dialog").showModal(); +if (testRunner) +testRunner.dumpAsText(); + Modified: trunk/Source/WebCore/ChangeLog (286440 => 286441) --- trunk/Source/WebCore/ChangeLog 2021-12-02 19:39:41 UTC (rev 286440) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 19:49:47 UTC (rev 286441) @@ -1,3 +1,25 @@ +2021-12-02 Tim Nguyen + +Fix crash in GraphicsContextCG::endTransparencyLayer +https://bugs.webkit.org/show_bug.cgi?id=230230 + +Reviewed by Myles C. Maxfield. + +The crash was due to unbalanced calls to begin and end transparency layers. + +A branch handling ancestors of transparent layers that are transform root needed to be +aware of the top layer. Opacity on ancestors don't affect top layer elements so calling +`beginTransparencyLayers` on `parent()` is incorrect. + +Also fix `transparentPaintingAncestor()` to be top layer aware to avoid flickering layers +while scrolling. + +Test: fast/layers/top-layer-ancestor-opacity-and-transform-crash.html + +* rendering/RenderLayer.cpp: +(WebCore::RenderLayer::transparentPaintingAncestor): +(WebCore::RenderLayer::paintLayerWithEffects): + 2021-12-02 Robert Jenner Unreviewed, reverting r285570. Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (286440 => 286441) --- trunk/Source/WebCore/rendering/RenderLayer.cpp 2021-12-02 19:39:41 UTC (rev 286440) +++ trunk/Source/WebCore/rendering/RenderLayer.cpp 2021-12-02 19:49:47 UTC (rev 286441) @@ -2089,9 +2089,9 @@ if (isComposited()) return nullptr; -for (RenderLayer* curr = parent(); curr; curr = curr->parent()) { +for (RenderLayer* curr = stackingContext(); curr; curr = curr->stackingContext()) { if (curr->isComposited()) -return nullptr; +break; if (curr->isTransparent()) return curr; } @@ -3061,7 +3061,8 @@ // If we have a transparency layer enclosing us and we are the root of a transform, then we
[webkit-changes] [286440] trunk/Tools
Title: [286440] trunk/Tools Revision 286440 Author beid...@apple.com Date 2021-12-02 11:39:41 -0800 (Thu, 02 Dec 2021) Log Message REGRESSION: r286075 [ Big Sur x86] 2 TestWebKitAPI.WebPushD (API-Tests) are constant failures https://bugs.webkit.org/show_bug.cgi?id=233726 Unreviewed gardening. - Disabling these tests on all Mac platforms until we can figure out the code signing/etc situation - Fix the truly broken "basic" test everywhere by adapting to messaging changes * TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm: (TestWebKitAPI::TEST): Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm Diff Modified: trunk/Tools/ChangeLog (286439 => 286440) --- trunk/Tools/ChangeLog 2021-12-02 19:35:49 UTC (rev 286439) +++ trunk/Tools/ChangeLog 2021-12-02 19:39:41 UTC (rev 286440) @@ -1,3 +1,16 @@ +2021-12-02 Brady Eidson + +REGRESSION: r286075 [ Big Sur x86] 2 TestWebKitAPI.WebPushD (API-Tests) are constant failures +https://bugs.webkit.org/show_bug.cgi?id=233726 + +Unreviewed gardening. + +- Disabling these tests on all Mac platforms until we can figure out the code signing/etc situation +- Fix the truly broken "basic" test everywhere by adapting to messaging changes + +* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm: +(TestWebKitAPI::TEST): + 2021-12-02 Carlos Garcia Campos Unreviewed. [GTK] Use nullptr instead of 0 in JSStringCreateWithCharacters() Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm (286439 => 286440) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm 2021-12-02 19:35:49 UTC (rev 286439) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm 2021-12-02 19:39:41 UTC (rev 286440) @@ -161,8 +161,8 @@ EXPECT_NULL(error); } -// FIXME: Re-enable this test for Monterey+ once webkit.org/232857 is resolved. -#if PLATFORM(MAC) && (__MAC_OS_X_VERSION_MIN_REQUIRED < 11 || __MAC_OS_X_VERSION_MIN_REQUIRED >= 12) +// FIXME: Re-enable this test on Mac once webkit.org/232857 is resolved. +#if PLATFORM(MAC) TEST(WebPushD, DISABLED_BasicCommunication) #else TEST(WebPushD, BasicCommunication) @@ -199,15 +199,16 @@ return; } -// Send audit token +// Send configuration with audit token { -std::array encodedMessage; +std::array encodedMessage; encodedMessage.fill(0); -encodedMessage[0] = 32; -memcpy([8], , sizeof(token)); +encodedMessage[1] = 1; +encodedMessage[2] = 32; +memcpy([10], , sizeof(token)); auto dictionary = adoptNS(xpc_dictionary_create(nullptr, nullptr, 0)); xpc_dictionary_set_uint64(dictionary.get(), "protocol version", 1); -xpc_dictionary_set_uint64(dictionary.get(), "message type", 5); +xpc_dictionary_set_uint64(dictionary.get(), "message type", 6); xpc_dictionary_set_data(dictionary.get(), "encoded message", encodedMessage.data(), encodedMessage.size()); xpc_connection_send_message(connection.get(), dictionary.get()); } @@ -217,7 +218,7 @@ auto dictionary = adoptNS(xpc_dictionary_create(nullptr, nullptr, 0)); std::array encodedMessage { 1 }; xpc_dictionary_set_uint64(dictionary.get(), "protocol version", 1); -xpc_dictionary_set_uint64(dictionary.get(), "message type", 6); +xpc_dictionary_set_uint64(dictionary.get(), "message type", 5); xpc_dictionary_set_data(dictionary.get(), "encoded message", encodedMessage.data(), encodedMessage.size()); xpc_connection_send_message(connection.get(), dictionary.get()); @@ -258,8 +259,8 @@ )WEBPUSHRESOURCE"; -// FIXME: Re-enable this test for Monterey+ once webkit.org/232857 is resolved. -#if PLATFORM(MAC) && (__MAC_OS_X_VERSION_MIN_REQUIRED < 11 || __MAC_OS_X_VERSION_MIN_REQUIRED >= 12) +// FIXME: Re-enable this test on Mac once webkit.org/232857 is resolved. +#if PLATFORM(MAC) TEST(WebPushD, DISABLED_PermissionManagement) #else TEST(WebPushD, PermissionManagement) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286439] trunk
Title: [286439] trunk Revision 286439 Author jen...@apple.com Date 2021-12-02 11:35:49 -0800 (Thu, 02 Dec 2021) Log Message Unreviewed, reverting r285570. Broke StarD build Reverted changeset: "Fix crash in GraphicsContextCG::endTransparencyLayer" https://bugs.webkit.org/show_bug.cgi?id=230230 https://commits.webkit.org/r285570 Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderLayer.cpp Removed Paths trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (286438 => 286439) --- trunk/LayoutTests/ChangeLog 2021-12-02 19:19:01 UTC (rev 286438) +++ trunk/LayoutTests/ChangeLog 2021-12-02 19:35:49 UTC (rev 286439) @@ -1,3 +1,15 @@ +2021-12-02 Robert Jenner + +Unreviewed, reverting r285570. + +Broke StarD build + +Reverted changeset: + +"Fix crash in GraphicsContextCG::endTransparencyLayer" +https://bugs.webkit.org/show_bug.cgi?id=230230 +https://commits.webkit.org/r285570 + 2021-12-02 Tyler Wilcock AX Isolated Tree: Document links should be stored in web areas, not the root Deleted: trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt (286438 => 286439) --- trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt 2021-12-02 19:19:01 UTC (rev 286438) +++ trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt 2021-12-02 19:35:49 UTC (rev 286439) @@ -1 +0,0 @@ -PASS if this doesn't crash Deleted: trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html (286438 => 286439) --- trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html 2021-12-02 19:19:01 UTC (rev 286438) +++ trunk/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html 2021-12-02 19:35:49 UTC (rev 286439) @@ -1,9 +0,0 @@ - -* { opacity: 0.1; translate: 1px; } - -PASS if this doesn't crash - -document.querySelector("dialog").showModal(); -if (testRunner) -testRunner.dumpAsText(); - Modified: trunk/Source/WebCore/ChangeLog (286438 => 286439) --- trunk/Source/WebCore/ChangeLog 2021-12-02 19:19:01 UTC (rev 286438) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 19:35:49 UTC (rev 286439) @@ -1,3 +1,15 @@ +2021-12-02 Robert Jenner + +Unreviewed, reverting r285570. + +Broke StarD build + +Reverted changeset: + +"Fix crash in GraphicsContextCG::endTransparencyLayer" +https://bugs.webkit.org/show_bug.cgi?id=230230 +https://commits.webkit.org/r285570 + 2021-12-02 Antti Koivisto [:has() pseudo-class] Invalidation in non-subject position Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (286438 => 286439) --- trunk/Source/WebCore/rendering/RenderLayer.cpp 2021-12-02 19:19:01 UTC (rev 286438) +++ trunk/Source/WebCore/rendering/RenderLayer.cpp 2021-12-02 19:35:49 UTC (rev 286439) @@ -2089,9 +2089,9 @@ if (isComposited()) return nullptr; -for (RenderLayer* curr = stackingContext(); curr; curr = curr->stackingContext()) { +for (RenderLayer* curr = parent(); curr; curr = curr->parent()) { if (curr->isComposited()) -break; +return nullptr; if (curr->isTransparent()) return curr; } @@ -3061,8 +3061,7 @@ // If we have a transparency layer enclosing us and we are the root of a transform, then we need to establish the transparency // layer from the parent now, assuming there is a parent if (paintFlags & PaintLayerFlag::HaveTransparency) { -// Top layer elements are not affected by ancestor opacities -if (!establishesTopLayer() && parent()) +if (parent()) parent()->beginTransparencyLayers(context, paintingInfo, paintingInfo.paintDirtyRect); else beginTransparencyLayers(context, paintingInfo, paintingInfo.paintDirtyRect); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286438] trunk/Source
Title: [286438] trunk/Source Revision 286438 Author commit-qu...@webkit.org Date 2021-12-02 11:19:01 -0800 (Thu, 02 Dec 2021) Log Message Unreviewed, reverting r286437. https://bugs.webkit.org/show_bug.cgi?id=233776 Introduced test failure Reverted changeset: "[WP] Strengthen sandbox when AppCache is disabled" https://bugs.webkit.org/show_bug.cgi?id=233746 https://commits.webkit.org/r286437 Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WTF/ChangeLog (286437 => 286438) --- trunk/Source/WTF/ChangeLog 2021-12-02 18:44:46 UTC (rev 286437) +++ trunk/Source/WTF/ChangeLog 2021-12-02 19:19:01 UTC (rev 286438) @@ -1,3 +1,16 @@ +2021-12-02 Commit Queue + +Unreviewed, reverting r286437. +https://bugs.webkit.org/show_bug.cgi?id=233776 + +Introduced test failure + +Reverted changeset: + +"[WP] Strengthen sandbox when AppCache is disabled" +https://bugs.webkit.org/show_bug.cgi?id=233746 +https://commits.webkit.org/r286437 + 2021-12-02 Per Arne Vollan [WP] Strengthen sandbox when AppCache is disabled Modified: trunk/Source/WTF/wtf/PlatformHave.h (286437 => 286438) --- trunk/Source/WTF/wtf/PlatformHave.h 2021-12-02 18:44:46 UTC (rev 286437) +++ trunk/Source/WTF/wtf/PlatformHave.h 2021-12-02 19:19:01 UTC (rev 286438) @@ -1102,8 +1102,3 @@ #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 12 #undef HAVE_AV_DELEGATING_PLAYBACK_COORDINATOR #endif - -#if ((PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 13) \ -|| (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 16)) -#define HAVE_SANDBOX_STATE_FLAGS 1 -#endif Modified: trunk/Source/WebKit/ChangeLog (286437 => 286438) --- trunk/Source/WebKit/ChangeLog 2021-12-02 18:44:46 UTC (rev 286437) +++ trunk/Source/WebKit/ChangeLog 2021-12-02 19:19:01 UTC (rev 286438) @@ -1,3 +1,16 @@ +2021-12-02 Commit Queue + +Unreviewed, reverting r286437. +https://bugs.webkit.org/show_bug.cgi?id=233776 + +Introduced test failure + +Reverted changeset: + +"[WP] Strengthen sandbox when AppCache is disabled" +https://bugs.webkit.org/show_bug.cgi?id=233746 +https://commits.webkit.org/r286437 + 2021-12-02 Per Arne Vollan [WP] Strengthen sandbox when AppCache is disabled Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (286437 => 286438) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-02 18:44:46 UTC (rev 286437) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-02 19:19:01 UTC (rev 286438) @@ -1385,45 +1385,27 @@ (when (defined? 'system-fcntl) (deny system-fcntl (with telemetry)) (allow system-fcntl -(fcntl-command -F_GETPATH)) ;; used by dyld4 and CGFontURLCreate, getcwd (at least) -(allow system-fcntl (with report) (with telemetry) -(fcntl-command -F_BARRIERFSYNC -F_GETCONFINED -F_GETFL ;; LibJPEGReadPlugin::copyImageBlockSetStandard -F_GETSIGSINFO -F_NOCACHE -F_RDADVISE -F_SETCONFINED -F_ADDFILESIGS_RETURN ;; ImageLoaderMachO::loadCodeSignature -F_CHECK_LV ;; ImageLoaderMachO::loadCodeSignature -F_SPECULATIVE_READ ;; ImageLoaderMachO::mapSegments -F_SETFD ;; libwebrtc.dylib (no backtrace) -F_GETFD ;; libwebrtc.dylib (no backtrace) -F_SETFL ;; CMCapture uses when camera is enabled -F_SETNOSIGPIPE)) ;; CMCapture uses when camera is enabled +(fcntl-command F_BARRIERFSYNC) +(fcntl-command F_GETCONFINED) +(fcntl-command F_GETFL) ;; LibJPEGReadPlugin::copyImageBlockSetStandard +(fcntl-command F_GETLK) +(fcntl-command F_GETSIGSINFO) +(fcntl-command F_NOCACHE) +(fcntl-command F_OFD_GETLK) +(fcntl-command F_OFD_SETLKWTIMEOUT) +(fcntl-command F_RDADVISE) +(fcntl-command F_SETCONFINED) +(fcntl-command F_GETPATH) ;; used by dyld4 and CGFontURLCreate, getcwd (at least) +(fcntl-command F_ADDFILESIGS_RETURN) ;; ImageLoaderMachO::loadCodeSignature +(fcntl-command F_CHECK_LV) ;; ImageLoaderMachO::loadCodeSignature +(fcntl-command F_SPECULATIVE_READ) ;; ImageLoaderMachO::mapSegments +(fcntl-command F_SETFD) ;; libwebrtc.dylib (no backtrace) +(fcntl-command F_GETFD) ;; libwebrtc.dylib (no backtrace) +(fcntl-command F_SETFL) ;; CMCapture uses when camera is enabled +(fcntl-command F_SETNOSIGPIPE)) ;; CMCapture uses when camera is enabled -(define
[webkit-changes] [286437] trunk/Source
Title: [286437] trunk/Source Revision 286437 Author pvol...@apple.com Date 2021-12-02 10:44:46 -0800 (Thu, 02 Dec 2021) Log Message [WP] Strengthen sandbox when AppCache is disabled https://bugs.webkit.org/show_bug.cgi?id=233746 Reviewed by Brent Fulgham. Source/WebKit: When AppCache is disabled, we can remove access to some resources in the WebContent process' sandbox. This is implemented using a new sandbox state variable representing the AppCache state. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: * WebProcess/WebPage/WebPage.cpp: * WebProcess/com.apple.WebProcess.sb.in: Source/WTF: Add HAVE macro for sandbox state flags support. * wtf/PlatformHave.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WTF/ChangeLog (286436 => 286437) --- trunk/Source/WTF/ChangeLog 2021-12-02 17:57:46 UTC (rev 286436) +++ trunk/Source/WTF/ChangeLog 2021-12-02 18:44:46 UTC (rev 286437) @@ -1,3 +1,15 @@ +2021-12-02 Per Arne Vollan + +[WP] Strengthen sandbox when AppCache is disabled +https://bugs.webkit.org/show_bug.cgi?id=233746 + + +Reviewed by Brent Fulgham. + +Add HAVE macro for sandbox state flags support. + +* wtf/PlatformHave.h: + 2021-12-02 Aditya Keerthi [macCatalyst] Enable support for date/time inputs Modified: trunk/Source/WTF/wtf/PlatformHave.h (286436 => 286437) --- trunk/Source/WTF/wtf/PlatformHave.h 2021-12-02 17:57:46 UTC (rev 286436) +++ trunk/Source/WTF/wtf/PlatformHave.h 2021-12-02 18:44:46 UTC (rev 286437) @@ -1102,3 +1102,8 @@ #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 12 #undef HAVE_AV_DELEGATING_PLAYBACK_COORDINATOR #endif + +#if ((PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 13) \ +|| (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 16)) +#define HAVE_SANDBOX_STATE_FLAGS 1 +#endif Modified: trunk/Source/WebKit/ChangeLog (286436 => 286437) --- trunk/Source/WebKit/ChangeLog 2021-12-02 17:57:46 UTC (rev 286436) +++ trunk/Source/WebKit/ChangeLog 2021-12-02 18:44:46 UTC (rev 286437) @@ -1,3 +1,18 @@ +2021-12-02 Per Arne Vollan + +[WP] Strengthen sandbox when AppCache is disabled +https://bugs.webkit.org/show_bug.cgi?id=233746 + + +Reviewed by Brent Fulgham. + +When AppCache is disabled, we can remove access to some resources in the WebContent process' sandbox. +This is implemented using a new sandbox state variable representing the AppCache state. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: +* WebProcess/WebPage/WebPage.cpp: +* WebProcess/com.apple.WebProcess.sb.in: + 2021-12-02 Youenn Fablet Add some logging to NetworkRTCProvider Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (286436 => 286437) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-02 17:57:46 UTC (rev 286436) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-02 18:44:46 UTC (rev 286437) @@ -1385,27 +1385,45 @@ (when (defined? 'system-fcntl) (deny system-fcntl (with telemetry)) (allow system-fcntl -(fcntl-command F_BARRIERFSYNC) -(fcntl-command F_GETCONFINED) -(fcntl-command F_GETFL) ;; LibJPEGReadPlugin::copyImageBlockSetStandard -(fcntl-command F_GETLK) -(fcntl-command F_GETSIGSINFO) -(fcntl-command F_NOCACHE) -(fcntl-command F_OFD_GETLK) -(fcntl-command F_OFD_SETLKWTIMEOUT) -(fcntl-command F_RDADVISE) -(fcntl-command F_SETCONFINED) -(fcntl-command F_GETPATH) ;; used by dyld4 and CGFontURLCreate, getcwd (at least) -(fcntl-command F_ADDFILESIGS_RETURN) ;; ImageLoaderMachO::loadCodeSignature -(fcntl-command F_CHECK_LV) ;; ImageLoaderMachO::loadCodeSignature -(fcntl-command F_SPECULATIVE_READ) ;; ImageLoaderMachO::mapSegments -(fcntl-command F_SETFD) ;; libwebrtc.dylib (no backtrace) -(fcntl-command F_GETFD) ;; libwebrtc.dylib (no backtrace) -(fcntl-command F_SETFL) ;; CMCapture uses when camera is enabled -(fcntl-command F_SETNOSIGPIPE)) ;; CMCapture uses when camera is enabled +(fcntl-command +F_GETPATH)) ;; used by dyld4 and CGFontURLCreate, getcwd (at least) +(allow system-fcntl (with report) (with telemetry) +(fcntl-command +F_BARRIERFSYNC +F_GETCONFINED +F_GETFL ;; LibJPEGReadPlugin::copyImageBlockSetStandard +F_GETSIGSINFO +F_NOCACHE +F_RDADVISE +F_SETCONFINED +
[webkit-changes] [286435] branches/safari-613.1.10-branch/Source/WebKit
Title: [286435] branches/safari-613.1.10-branch/Source/WebKit Revision 286435 Author repst...@apple.com Date 2021-12-02 09:57:42 -0800 (Thu, 02 Dec 2021) Log Message Cherry-pick r286266. rdar://problem/85832755 [WP] Sandbox telemetry is missing for some system calls https://bugs.webkit.org/show_bug.cgi?id=233594 Reviewed by Brent Fulgham. Sandbox telemetry is missing for some system calls, since telemetry rules are automatically overridden in some cases. This patch is addressing this by disabling system call inference. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286266 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-613.1.10-branch/Source/WebKit/ChangeLog branches/safari-613.1.10-branch/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in Diff Modified: branches/safari-613.1.10-branch/Source/WebKit/ChangeLog (286434 => 286435) --- branches/safari-613.1.10-branch/Source/WebKit/ChangeLog 2021-12-02 17:48:17 UTC (rev 286434) +++ branches/safari-613.1.10-branch/Source/WebKit/ChangeLog 2021-12-02 17:57:42 UTC (rev 286435) @@ -1,3 +1,34 @@ +2021-12-02 Russell Epstein + +Cherry-pick r286266. rdar://problem/85832755 + +[WP] Sandbox telemetry is missing for some system calls +https://bugs.webkit.org/show_bug.cgi?id=233594 + + +Reviewed by Brent Fulgham. + +Sandbox telemetry is missing for some system calls, since telemetry rules are automatically overridden in some cases. +This patch is addressing this by disabling system call inference. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286266 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-29 Per Arne Vollan + +[WP] Sandbox telemetry is missing for some system calls +https://bugs.webkit.org/show_bug.cgi?id=233594 + + +Reviewed by Brent Fulgham. + +Sandbox telemetry is missing for some system calls, since telemetry rules are automatically overridden in some cases. +This patch is addressing this by disabling system call inference. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: + 2021-12-01 Russell Epstein Cherry-pick r286386. rdar://problem/75225923 Modified: branches/safari-613.1.10-branch/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (286434 => 286435) --- branches/safari-613.1.10-branch/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-02 17:48:17 UTC (rev 286434) +++ branches/safari-613.1.10-branch/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-02 17:57:42 UTC (rev 286435) @@ -1193,6 +1193,8 @@ (global-name "com.apple.webkit.camera") ) +(disable-syscall-inference) + (when (defined? 'syscall-unix) (deny syscall-unix (with send-signal SIGKILL)) (allow syscall-unix @@ -1206,6 +1208,10 @@ (syscall-number SYS_bsdthread_terminate) (syscall-number SYS_change_fdguard_np) (syscall-number SYS_chdir) +(syscall-number SYS_close) +(syscall-number SYS_close_nocancel) +(syscall-number SYS_csops) ;; used by Corefoundation initialization +(syscall-number SYS_csops_audittoken) ;; used by WK to get entitlments (syscall-number SYS_exit) (syscall-number SYS_faccessat) ;; (syscall-number SYS_fcntl) @@ -1235,6 +1241,7 @@ (syscall-number SYS_guarded_open_dprotected_np) ; (syscall-number SYS_guarded_open_np) (syscall-number SYS_guarded_pwrite_np) +(syscall-number SYS_ioctl) ;; needed by tcgetattr (TIOCGETA) - debugging (syscall-number SYS_issetugid) (syscall-number SYS_kdebug_trace64) (syscall-number SYS_kdebug_typefilter) @@ -1253,9 +1260,13 @@ (syscall-number SYS_msync) (syscall-number SYS_munmap) (syscall-number SYS_objc_bp_assist_cfg_np) +(syscall-number SYS_open) +(syscall-number SYS_open_nocancel) +(syscall-number SYS_openat) (syscall-number SYS_os_fault_with_payload) (syscall-number SYS_pathconf) (syscall-number SYS_pread) +(syscall-number SYS_proc_info) (syscall-number SYS_psynch_cvbroad) (syscall-number SYS_psynch_cvclrprepost) (syscall-number SYS_psynch_cvsignal) @@ -1268,17 +1279,23 @@ (syscall-number SYS_read_nocancel) (syscall-number SYS_readlink) (syscall-number SYS_rename) +(syscall-number SYS_sem_close) +(syscall-number SYS_sem_open) (syscall-number SYS_shared_region_check_np) (syscall-number SYS_shared_region_map_and_slide_2_np) ;; +(syscall-number SYS_shm_open)
[webkit-changes] [286436] branches/safari-613.1.10-branch/Source/WebKit
Title: [286436] branches/safari-613.1.10-branch/Source/WebKit Revision 286436 Author repst...@apple.com Date 2021-12-02 09:57:46 -0800 (Thu, 02 Dec 2021) Log Message Cherry-pick r286381. rdar://problem/85832755 [WP] Sandbox telemetry is missing for some system calls https://bugs.webkit.org/show_bug.cgi?id=233594 Reviewed by Brent Fulgham. Sandbox telemetry is missing for some system calls, since telemetry rules are automatically overridden in some cases. This patch is addressing this by disabling system call inference. * WebProcess/com.apple.WebProcess.sb.in: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286381 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-613.1.10-branch/Source/WebKit/ChangeLog branches/safari-613.1.10-branch/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: branches/safari-613.1.10-branch/Source/WebKit/ChangeLog (286435 => 286436) --- branches/safari-613.1.10-branch/Source/WebKit/ChangeLog 2021-12-02 17:57:42 UTC (rev 286435) +++ branches/safari-613.1.10-branch/Source/WebKit/ChangeLog 2021-12-02 17:57:46 UTC (rev 286436) @@ -1,5 +1,36 @@ 2021-12-02 Russell Epstein +Cherry-pick r286381. rdar://problem/85832755 + +[WP] Sandbox telemetry is missing for some system calls +https://bugs.webkit.org/show_bug.cgi?id=233594 + + +Reviewed by Brent Fulgham. + +Sandbox telemetry is missing for some system calls, since telemetry rules are automatically overridden in some cases. +This patch is addressing this by disabling system call inference. + +* WebProcess/com.apple.WebProcess.sb.in: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286381 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Per Arne Vollan + +[WP] Sandbox telemetry is missing for some system calls +https://bugs.webkit.org/show_bug.cgi?id=233594 + + +Reviewed by Brent Fulgham. + +Sandbox telemetry is missing for some system calls, since telemetry rules are automatically overridden in some cases. +This patch is addressing this by disabling system call inference. + +* WebProcess/com.apple.WebProcess.sb.in: + +2021-12-02 Russell Epstein + Cherry-pick r286266. rdar://problem/85832755 [WP] Sandbox telemetry is missing for some system calls Modified: branches/safari-613.1.10-branch/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in (286435 => 286436) --- branches/safari-613.1.10-branch/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2021-12-02 17:57:42 UTC (rev 286435) +++ branches/safari-613.1.10-branch/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2021-12-02 17:57:46 UTC (rev 286436) @@ -1870,6 +1870,10 @@ ) #endif +#if __MAC_OS_X_VERSION_MIN_REQUIRED > 12 +(disable-syscall-inference) +#endif + (define (syscall-unix-common) (syscall-number SYS___disable_threadsignal @@ -1878,6 +1882,10 @@ SYS_bsdthread_create SYS_bsdthread_ctl SYS_bsdthread_terminate +SYS_close +SYS_close_nocancel +SYS_csops +SYS_csops_audittoken SYS_csrctl SYS_exit SYS_fcntl @@ -1885,6 +1893,7 @@ SYS_fgetxattr SYS_fileport_makefd SYS_flock +SYS_fsetxattr ;; SYS_fsgetpath SYS_fstat64 SYS_fstatat64 @@ -1904,6 +1913,7 @@ SYS_gettimeofday SYS_getuid SYS_getxattr +SYS_ioctl SYS_issetugid SYS_kdebug_trace SYS_kdebug_trace64 @@ -1919,8 +1929,12 @@ SYS_mprotect SYS_msync SYS_munmap +SYS_open +SYS_open_nocancel +SYS_openat SYS_pathconf SYS_pread +SYS_proc_info SYS_psynch_cvbroad SYS_psynch_cvclrprepost SYS_psynch_cvsignal @@ -1933,10 +1947,13 @@ SYS_rename SYS_stat64 SYS_statfs64 +SYS_sysctlbyname SYS_thread_selfid SYS_ulock_wait SYS_ulock_wake -SYS_workq_kernreturn)) +SYS_workq_kernreturn +SYS_write_nocancel +SYS_writev)) (define (syscall-unix-intel) (syscall-number @@ -1968,18 +1985,13 @@ SYS_change_fdguard_np SYS_chmod SYS_chmod_extended -SYS_close -SYS_close_nocancel SYS_connect SYS_connect_nocancel SYS_connectx -SYS_csops -SYS_csops_audittoken SYS_dup SYS_fchmod SYS_fgetattrlist ;; SYS_fileport_makeport -SYS_fsetxattr ;; SYS_fstat64_extended ;; SYS_fsync SYS_getegid @@ -1991,7 +2003,6 @@ SYS_guarded_open_np SYS_guarded_pwrite_np SYS_guarded_write_np -SYS_ioctl SYS_kdebug_typefilter SYS_kevent SYS_kqueue ;; @@
[webkit-changes] [286434] trunk/Source/WTF
Title: [286434] trunk/Source/WTF Revision 286434 Author akeer...@apple.com Date 2021-12-02 09:48:17 -0800 (Thu, 02 Dec 2021) Log Message [macCatalyst] Enable support for date/time inputs https://bugs.webkit.org/show_bug.cgi?id=233710 rdar://80108114 Reviewed by Tim Horton. Date/time inputs were unsupported due to the lack of support for custom views inside UIContextMenuInteractions on macCatalyst. However, after date/time pickers transitioned to use _UIDatePickerOverlayPresentation in iOS 15, there is nothing preventing them from functioning on macCatalyst. * Scripts/Preferences/WebPreferencesInternal.yaml: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml Diff Modified: trunk/Source/WTF/ChangeLog (286433 => 286434) --- trunk/Source/WTF/ChangeLog 2021-12-02 17:36:50 UTC (rev 286433) +++ trunk/Source/WTF/ChangeLog 2021-12-02 17:48:17 UTC (rev 286434) @@ -1,3 +1,20 @@ +2021-12-02 Aditya Keerthi + +[macCatalyst] Enable support for date/time inputs +https://bugs.webkit.org/show_bug.cgi?id=233710 +rdar://80108114 + +Reviewed by Tim Horton. + +Date/time inputs were unsupported due to the lack of support for custom +views inside UIContextMenuInteractions on macCatalyst. + +However, after date/time pickers transitioned to use +_UIDatePickerOverlayPresentation in iOS 15, there is nothing preventing +them from functioning on macCatalyst. + +* Scripts/Preferences/WebPreferencesInternal.yaml: + 2021-12-02 Alexey Proskuryakov macOS Monterey build fix after r286420 (suggested by Brady). Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml (286433 => 286434) --- trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml 2021-12-02 17:36:50 UTC (rev 286433) +++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml 2021-12-02 17:48:17 UTC (rev 286434) @@ -343,7 +343,7 @@ "PLATFORM(IOS_FAMILY)": true default: false WebKit: - "PLATFORM(MACCATALYST) || PLATFORM(APPLETV)": false + "PLATFORM(APPLETV)": false default: true WebCore: default: false @@ -358,7 +358,7 @@ "PLATFORM(IOS_FAMILY)": true default: false WebKit: - "PLATFORM(MACCATALYST) || PLATFORM(APPLETV)": false + "PLATFORM(APPLETV)": false default: true WebCore: default: false @@ -373,7 +373,7 @@ "PLATFORM(IOS_FAMILY)": true default: false WebKit: - "!PLATFORM(MAC) && !PLATFORM(MACCATALYST) && !PLATFORM(APPLETV)": true + "!PLATFORM(MAC) && !PLATFORM(APPLETV)": true default: false WebCore: default: false @@ -388,7 +388,7 @@ "PLATFORM(IOS_FAMILY)": true default: false WebKit: - "PLATFORM(MACCATALYST) || PLATFORM(APPLETV)": false + "PLATFORM(APPLETV)": false default: true WebCore: default: false @@ -402,7 +402,7 @@ WebKitLegacy: default: false WebKit: - "!PLATFORM(MAC) && !PLATFORM(MACCATALYST) && !PLATFORM(APPLETV)": true + "!PLATFORM(MAC) && !PLATFORM(APPLETV)": true default: false WebCore: default: false ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286433] trunk
Title: [286433] trunk Revision 286433 Author an...@apple.com Date 2021-12-02 09:36:50 -0800 (Thu, 02 Dec 2021) Log Message [:has() pseudo-class] Invalidation in non-subject position https://bugs.webkit.org/show_bug.cgi?id=233758 Reviewed by Simon Fraser. LayoutTests/imported/w3c: * web-platform-tests/css/selectors/invalidation/has-in-adjacent-position-expected.txt: Added. * web-platform-tests/css/selectors/invalidation/has-in-adjacent-position.html: Added. * web-platform-tests/css/selectors/invalidation/has-in-ancestor-position-expected.txt: Added. * web-platform-tests/css/selectors/invalidation/has-in-ancestor-position.html: Added. * web-platform-tests/css/selectors/invalidation/has-in-parent-position-expected.txt: Added. * web-platform-tests/css/selectors/invalidation/has-in-parent-position.html: Added. * web-platform-tests/css/selectors/invalidation/has-in-sibling-position-expected.txt: Added. * web-platform-tests/css/selectors/invalidation/has-in-sibling-position.html: Added. Source/WebCore: Invalidation for selectors like '.ancestor:has(.foo) #target'. Tests: imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-adjacent-position.html imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-ancestor-position.html imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-parent-position.html imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-sibling-position.html * style/ChildChangeInvalidation.cpp: (WebCore::Style::ChildChangeInvalidation::invalidateForChangedElement): (WebCore::Style::needsTraversal): (WebCore::Style::needsDescendantTraversal): * style/RuleFeature.cpp: (WebCore::Style::isSiblingOrSubject): (WebCore::Style::isHasPseudoClassMatchElement): (WebCore::Style::computeHasPseudoClassMatchElement): (WebCore::Style::computeSubSelectorMatchElement): Use new MatchElement::HasNonSubject as a catch-all for cases where :has() is in a non-subject position. In the future this can be optimized better by computing both the :has match element and the overall match element separately. * style/RuleFeature.h: * style/StyleInvalidator.cpp: (WebCore::Style::Invalidator::invalidateStyleWithMatchElement): Worst-case invalidation. Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/style/ChildChangeInvalidation.cpp trunk/Source/WebCore/style/RuleFeature.cpp trunk/Source/WebCore/style/RuleFeature.h trunk/Source/WebCore/style/StyleInvalidator.cpp Added Paths trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-adjacent-position-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-adjacent-position.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-ancestor-position-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-ancestor-position.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-parent-position-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-parent-position.html trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-sibling-position-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-sibling-position.html Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286432 => 286433) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-02 16:44:31 UTC (rev 286432) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-02 17:36:50 UTC (rev 286433) @@ -1,3 +1,19 @@ +2021-12-02 Antti Koivisto + +[:has() pseudo-class] Invalidation in non-subject position +https://bugs.webkit.org/show_bug.cgi?id=233758 + +Reviewed by Simon Fraser. + +* web-platform-tests/css/selectors/invalidation/has-in-adjacent-position-expected.txt: Added. +* web-platform-tests/css/selectors/invalidation/has-in-adjacent-position.html: Added. +* web-platform-tests/css/selectors/invalidation/has-in-ancestor-position-expected.txt: Added. +* web-platform-tests/css/selectors/invalidation/has-in-ancestor-position.html: Added. +* web-platform-tests/css/selectors/invalidation/has-in-parent-position-expected.txt: Added. +* web-platform-tests/css/selectors/invalidation/has-in-parent-position.html: Added. +* web-platform-tests/css/selectors/invalidation/has-in-sibling-position-expected.txt: Added. +* web-platform-tests/css/selectors/invalidation/has-in-sibling-position.html: Added. + 2021-12-02 Andreu Botella File inputs in non-multipart form submissions show up as string values in the formdata event Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-adjacent-position-expected.txt (0 => 286433) ---
[webkit-changes] [286432] trunk/Source/WebKit
Title: [286432] trunk/Source/WebKit Revision 286432 Author you...@apple.com Date 2021-12-02 08:44:31 -0800 (Thu, 02 Dec 2021) Log Message Add some logging to NetworkRTCProvider https://bugs.webkit.org/show_bug.cgi?id=233759 Reviewed by Eric Carlson. No change of behavior. * NetworkProcess/webrtc/NetworkRTCProvider.cpp: (WebKit::NetworkRTCProvider::addSocket): * NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm: (WebKit::NetworkRTCUDPSocketCocoaConnections::NetworkRTCUDPSocketCocoaConnections): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp trunk/Source/WebKit/NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm Diff Modified: trunk/Source/WebKit/ChangeLog (286431 => 286432) --- trunk/Source/WebKit/ChangeLog 2021-12-02 16:33:01 UTC (rev 286431) +++ trunk/Source/WebKit/ChangeLog 2021-12-02 16:44:31 UTC (rev 286432) @@ -1,3 +1,17 @@ +2021-12-02 Youenn Fablet + +Add some logging to NetworkRTCProvider +https://bugs.webkit.org/show_bug.cgi?id=233759 + +Reviewed by Eric Carlson. + +No change of behavior. + +* NetworkProcess/webrtc/NetworkRTCProvider.cpp: +(WebKit::NetworkRTCProvider::addSocket): +* NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm: +(WebKit::NetworkRTCUDPSocketCocoaConnections::NetworkRTCUDPSocketCocoaConnections): + 2021-12-02 Per Arne Vollan REGRESSION(r285722): Introduced performance regression Modified: trunk/Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp (286431 => 286432) --- trunk/Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp 2021-12-02 16:33:01 UTC (rev 286431) +++ trunk/Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp 2021-12-02 16:44:31 UTC (rev 286432) @@ -288,8 +288,11 @@ ASSERT(m_rtcNetworkThread.IsCurrent()); ASSERT(socket); m_sockets.emplace(identifier, WTFMove(socket)); + +RTC_RELEASE_LOG("new socket %" PRIu64 ", total socket number is %lu", identifier.toUInt64(), m_sockets.size()); if (m_sockets.size() > maxSockets) { auto socketIdentifierToClose = m_sockets.begin()->first; +RTC_RELEASE_LOG_ERROR("too many sockets, closing %" PRIu64, socketIdentifierToClose.toUInt64()); closeSocket(socketIdentifierToClose); ASSERT(m_sockets.find(socketIdentifierToClose) == m_sockets.end()); } Modified: trunk/Source/WebKit/NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm (286431 => 286432) --- trunk/Source/WebKit/NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm 2021-12-02 16:33:01 UTC (rev 286431) +++ trunk/Source/WebKit/NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm 2021-12-02 16:44:31 UTC (rev 286432) @@ -219,6 +219,7 @@ connection->send(Messages::LibWebRTCNetwork::SignalClose(identifier, -1), 0); break; case nw_listener_state_cancelled: +RELEASE_LOG(WebRTC, "NetworkRTCUDPSocketCocoaConnections cancelled listener %" PRIu64, identifier.toUInt64()); nwListener.clear(); break; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286431] trunk/Source/WTF
Title: [286431] trunk/Source/WTF Revision 286431 Author a...@apple.com Date 2021-12-02 08:33:01 -0800 (Thu, 02 Dec 2021) Log Message macOS Monterey build fix after r286420 (suggested by Brady). * wtf/PlatformHave.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h Diff Modified: trunk/Source/WTF/ChangeLog (286430 => 286431) --- trunk/Source/WTF/ChangeLog 2021-12-02 16:28:38 UTC (rev 286430) +++ trunk/Source/WTF/ChangeLog 2021-12-02 16:33:01 UTC (rev 286431) @@ -1,3 +1,9 @@ +2021-12-02 Alexey Proskuryakov + +macOS Monterey build fix after r286420 (suggested by Brady). + +* wtf/PlatformHave.h: + 2021-12-02 Brady Eidson AVDelegatingPlaybackCoordinator error compiling on macOS 11 Modified: trunk/Source/WTF/wtf/PlatformHave.h (286430 => 286431) --- trunk/Source/WTF/wtf/PlatformHave.h 2021-12-02 16:28:38 UTC (rev 286430) +++ trunk/Source/WTF/wtf/PlatformHave.h 2021-12-02 16:33:01 UTC (rev 286431) @@ -1099,6 +1099,6 @@ #if PLATFORM(COCOA) #define HAVE_AV_DELEGATING_PLAYBACK_COORDINATOR 1 #endif -#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED <= 12 +#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 12 #undef HAVE_AV_DELEGATING_PLAYBACK_COORDINATOR #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286430] trunk/Source/WebKit
Title: [286430] trunk/Source/WebKit Revision 286430 Author pvol...@apple.com Date 2021-12-02 08:28:38 -0800 (Thu, 02 Dec 2021) Log Message REGRESSION(r285722): Introduced performance regression https://bugs.webkit.org/show_bug.cgi?id=233718 Unreviewed partial revert of r285722. * Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb Diff Modified: trunk/Source/WebKit/ChangeLog (286429 => 286430) --- trunk/Source/WebKit/ChangeLog 2021-12-02 15:46:01 UTC (rev 286429) +++ trunk/Source/WebKit/ChangeLog 2021-12-02 16:28:38 UTC (rev 286430) @@ -1,3 +1,12 @@ +2021-12-02 Per Arne Vollan + +REGRESSION(r285722): Introduced performance regression +https://bugs.webkit.org/show_bug.cgi?id=233718 + +Unreviewed partial revert of r285722. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb: + 2021-12-02 Kimmo Kinnunen GraphicsContextGLANGLE should not have Cocoa Mac specific display reconfiguration code Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb (286429 => 286430) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb 2021-12-02 15:46:01 UTC (rev 286429) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb 2021-12-02 16:28:38 UTC (rev 286430) @@ -656,6 +656,21 @@ (deny file-write-create (vnode-type SYMLINK)) (deny file-read-xattr file-write-xattr (xattr-prefix "com.apple.security.private.")) +(allow iokit-open +(require-all +(extension "com.apple.webkit.extension.iokit") +(iokit-user-client-class +"AGXCommandQueue" +"AGXDevice" +"AGXSharedUserClient" +"IOAccelContext" +"IOAccelDevice" +"IOAccelSharedUserClient" +"IOAccelSubmitter2" +"IOAccelContext2" +"IOAccelDevice2" +"IOAccelSharedUserClient2"))) + (deny mach-lookup (with no-log) (xpc-service-name "com.apple.audio.toolbox.reporting.service") ) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286429] trunk/Source/bmalloc
Title: [286429] trunk/Source/bmalloc Revision 286429 Author commit-qu...@webkit.org Date 2021-12-02 07:46:01 -0800 (Thu, 02 Dec 2021) Log Message [libpas] Define and use PAS_RISCV https://bugs.webkit.org/show_bug.cgi?id=233753 Patch by Zan Dobersek on 2021-12-02 Reviewed by Yusuke Suzuki. Define PAS_RISCV as appropriate and use it accordingly to avoid custom x86-64 assembly, much like it's avoided for PAS_ARM. This gets libpas compiling for RISC-V targets. * libpas/src/libpas/pas_config.h: * libpas/src/libpas/pas_config_prefix.h: * libpas/src/libpas/pas_segregated_page_inlines.h: (pas_segregated_page_deallocate_with_page): * libpas/src/libpas/pas_utils.h: * libpas/src/libpas/pas_utils_prefix.h: (__pas_fence): Modified Paths trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/libpas/src/libpas/pas_config.h trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h trunk/Source/bmalloc/libpas/src/libpas/pas_segregated_page_inlines.h trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h trunk/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h Diff Modified: trunk/Source/bmalloc/ChangeLog (286428 => 286429) --- trunk/Source/bmalloc/ChangeLog 2021-12-02 15:41:52 UTC (rev 286428) +++ trunk/Source/bmalloc/ChangeLog 2021-12-02 15:46:01 UTC (rev 286429) @@ -1,3 +1,22 @@ +2021-12-02 Zan Dobersek + +[libpas] Define and use PAS_RISCV +https://bugs.webkit.org/show_bug.cgi?id=233753 + +Reviewed by Yusuke Suzuki. + +Define PAS_RISCV as appropriate and use it accordingly to avoid custom +x86-64 assembly, much like it's avoided for PAS_ARM. This gets libpas +compiling for RISC-V targets. + +* libpas/src/libpas/pas_config.h: +* libpas/src/libpas/pas_config_prefix.h: +* libpas/src/libpas/pas_segregated_page_inlines.h: +(pas_segregated_page_deallocate_with_page): +* libpas/src/libpas/pas_utils.h: +* libpas/src/libpas/pas_utils_prefix.h: +(__pas_fence): + 2021-11-24 Yusuke Suzuki [libpas] Unreviewed, speculative libpas Linux fix, libpas requires libatomic in Linux etc., part 2 Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_config.h (286428 => 286429) --- trunk/Source/bmalloc/libpas/src/libpas/pas_config.h 2021-12-02 15:41:52 UTC (rev 286428) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_config.h 2021-12-02 15:46:01 UTC (rev 286429) @@ -45,6 +45,8 @@ #define PAS_ARM __PAS_ARM +#define PAS_RISCV __PAS_RISCV + #define PAS_ADDRESS_BITS 48 #if PAS_ARM Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h (286428 => 286429) --- trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h 2021-12-02 15:41:52 UTC (rev 286428) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h 2021-12-02 15:46:01 UTC (rev 286429) @@ -43,3 +43,8 @@ #define __PAS_ARM (__PAS_ARM64 || __PAS_ARM32) +#if defined(__riscv) +#define __PAS_RISCV 1 +#else +#define __PAS_RISCV 0 +#endif Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_segregated_page_inlines.h (286428 => 286429) --- trunk/Source/bmalloc/libpas/src/libpas/pas_segregated_page_inlines.h 2021-12-02 15:41:52 UTC (rev 286428) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_segregated_page_inlines.h 2021-12-02 15:46:01 UTC (rev 286429) @@ -369,7 +369,7 @@ word = page->alloc_bits[word_index]; if (page_config.check_deallocation) { -#if !PAS_ARM +#if !PAS_ARM && !PAS_RISCV new_word = word; asm volatile ( @@ -385,7 +385,7 @@ : "+r"(new_word) : "r"((unsigned)bit_index_unmasked), "r"(begin) : "memory"); -#else /* !PAS_ARM -> so PAS_ARM */ +#else /* !PAS_ARM && !PAS_RISCV -> so PAS_ARM or PAS_RISCV */ unsigned bit_mask; bit_mask = PAS_BITVECTOR_BIT_MASK(bit_index_unmasked); @@ -393,7 +393,7 @@ pas_segregated_page_deallocation_did_fail(begin); new_word = word & ~bit_mask; -#endif /* !PAS_ARM -> so end of PAS_ARM */ +#endif /* !PAS_ARM && !PAS_RISCV-> so end of PAS_ARM or PAS_RISCV */ } else new_word = word & ~PAS_BITVECTOR_BIT_MASK(bit_index_unmasked); Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h (286428 => 286429) --- trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h 2021-12-02 15:41:52 UTC (rev 286428) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h 2021-12-02 15:46:01 UTC (rev 286429) @@ -83,6 +83,8 @@ #define PAS_ARM __PAS_ARM +#define PAS_RISCV __PAS_RISCV + #ifdef __cplusplus #define PAS_TYPEOF(a) decltype (a) #else Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h (286428 => 286429) --- trunk/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h 2021-12-02 15:41:52 UTC (rev 286428) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h 2021-12-02 15:46:01 UTC (rev 286429) @@ -102,7 +102,7 @@ static __PAS_ALWAYS_INLINE void __pas_fence(void) { -#if !__PAS_ARM +#if
[webkit-changes] [286428] trunk/Source/JavaScriptCore
Title: [286428] trunk/Source/_javascript_Core Revision 286428 Author commit-qu...@webkit.org Date 2021-12-02 07:41:52 -0800 (Thu, 02 Dec 2021) Log Message [RISCV64] Fix effective address loading for LabelReferences with offsets https://bugs.webkit.org/show_bug.cgi?id=233754 Patch by Zan Dobersek on 2021-12-02 Reviewed by Yusuke Suzuki. r286345 (and subsequent change in r286372) introduced a load from a label address with an additional offset. To properly handle this, RISCV64 offlineasm generates the desired load-effective-address instruction but now also generates an additional add instruction when an offset value is present for that lea. * offlineasm/riscv64.rb: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/offlineasm/riscv64.rb Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286427 => 286428) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-02 15:34:01 UTC (rev 286427) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-02 15:41:52 UTC (rev 286428) @@ -1,3 +1,18 @@ +2021-12-02 Zan Dobersek + +[RISCV64] Fix effective address loading for LabelReferences with offsets +https://bugs.webkit.org/show_bug.cgi?id=233754 + +Reviewed by Yusuke Suzuki. + +r286345 (and subsequent change in r286372) introduced a load from a +label address with an additional offset. To properly handle this, +RISCV64 offlineasm generates the desired load-effective-address +instruction but now also generates an additional add instruction when +an offset value is present for that lea. + +* offlineasm/riscv64.rb: + 2021-12-02 Geza Lore [JSC] Generated code size reductions for baseline JIT (all architectures) Modified: trunk/Source/_javascript_Core/offlineasm/riscv64.rb (286427 => 286428) --- trunk/Source/_javascript_Core/offlineasm/riscv64.rb 2021-12-02 15:34:01 UTC (rev 286427) +++ trunk/Source/_javascript_Core/offlineasm/riscv64.rb 2021-12-02 15:41:52 UTC (rev 286428) @@ -1464,6 +1464,41 @@ end end +def riscv64LowerLabelReferences(list) +newList = [] +list.each { +| node | +if node.is_a? Instruction +case node.opcode +when "leap", "leaq" +labelRef = node.operands[0] +if labelRef.is_a? LabelReference +dest = node.operands[1] +newList << Instruction.new(codeOrigin, node.opcode, [LabelReference.new(node.codeOrigin, labelRef.label), dest]) +if labelRef.offset != 0 +newList << Instruction.new(codeOrigin, "addp", [dest, Immediate.new(node.codeOrigin, labelRef.offset), dest]) +end +else +newList << node +end +else +newList << node +end +else +newList << node +end +} +newList +end + +class Sequence +def getModifiedListRISCV64 +result = @list +result = riscv64LowerLabelReferences(result) +return result +end +end + class Instruction def lowerRISCV64 case opcode ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286427] trunk
Title: [286427] trunk Revision 286427 Author commit-qu...@webkit.org Date 2021-12-02 07:34:01 -0800 (Thu, 02 Dec 2021) Log Message File inputs in non-multipart form submissions show up as string values in the formdata event https://bugs.webkit.org/show_bug.cgi?id=233725 Patch by Andreu Botella on 2021-12-02 Reviewed by Chris Dumez. LayoutTests/imported/w3c: Added tests in web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html to check that file inputs show up as File entries in the formdata event. * web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set-expected.txt: * web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html: * web-platform-tests/html/semantics/forms/form-submission-0/text-plain.window-expected.txt: * web-platform-tests/html/semantics/forms/form-submission-0/urlencoded2.window-expected.txt: Source/WebCore: When a form's entry list was constructed form a non-multipart/form-data form submission, file inputs were added to the DOMFormData object as string values consisting of the file's filename. Before r280310, this optimization was unobservable, since the DOMFormData object was never exposed to the user halfway through a form submission. r280310 changed this by adding the formdata event, which fires at the end of the "construct the entry list" algorithm and can be used to both inspect and modify the DOMFormData object. This means that it is now observable that file inputs in urlencoded and text/plain form submissions are encoded as their filenames, and that any new File entries added to the DOMFormData object the event listeners will be skipped when building the form payload. This change fixes that by always adding file inputs to DOMFormData as File entries, and using a File's filename as the string value in FormData::appendNonMultipartKeyValuePairItems Tests: imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/text-plain.window.html imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/urlencoded2.window.html * html/FileInputType.cpp: (WebCore::FileInputType::appendFormData const): Changed to always add File entries to the DOMFormData object, rather than adding the filenames as string values when `multipart` is false. * platform/network/FormData.cpp: (WebCore::FormData::appendNonMultiPartKeyValuePairItems): Changed to encode File entry values as their filenames, rather than skipping them. Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/text-plain.window-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/urlencoded2.window-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/FileInputType.cpp trunk/Source/WebCore/platform/network/FormData.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286426 => 286427) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-02 15:25:52 UTC (rev 286426) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-02 15:34:01 UTC (rev 286427) @@ -1,3 +1,18 @@ +2021-12-02 Andreu Botella + +File inputs in non-multipart form submissions show up as string values in the formdata event +https://bugs.webkit.org/show_bug.cgi?id=233725 + +Reviewed by Chris Dumez. + +Added tests in web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html +to check that file inputs show up as File entries in the formdata event. + +* web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set-expected.txt: +* web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html: +* web-platform-tests/html/semantics/forms/form-submission-0/text-plain.window-expected.txt: +* web-platform-tests/html/semantics/forms/form-submission-0/urlencoded2.window-expected.txt: + 2021-12-02 Alexey Shvayka Add a fast path for empty string to setInnerHTML() Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set-expected.txt (286426 => 286427) --- trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set-expected.txt 2021-12-02 15:25:52 UTC (rev 286426) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set-expected.txt 2021-12-02 15:34:01 UTC (rev 286427) @@ -5,6
[webkit-changes] [286426] trunk
Title: [286426] trunk Revision 286426 Author tyle...@apple.com Date 2021-12-02 07:25:52 -0800 (Thu, 02 Dec 2021) Log Message AX Isolated Tree: Document links should be stored in web areas, not the root https://bugs.webkit.org/show_bug.cgi?id=233728 Reviewed by Chris Fleizach. Source/WebCore: In WebAccessibilityObjectWrapperMac.mm, we expose the document links attribute (AXLinkUIElements) on web areas. However, in AXIsolatedObject::initializeAttributeData we currently only store AXPropertyName::DocumentLinks for the root element, which is not a web area. In this patch, we store document links for web area elements instead of the root element. This patch fixes accessibility/visible-elements.html, which tests document links. https://github.com/WebKit/WebKit/blob/109c8234854a0fa28955d81994bb98daa1fa14fe/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm#L2235#L2237 * accessibility/isolatedtree/AXIsolatedObject.cpp: (WebCore::AXIsolatedObject::initializeAttributeData): LayoutTests: * accessibility/visible-elements.html: * accessibility/visible-elements-expected.txt: Make this test async so it passes in isolated tree mode. This test must be async because it includes JS that dynamically changes page content. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/accessibility/visible-elements-expected.txt trunk/LayoutTests/accessibility/visible-elements.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286425 => 286426) --- trunk/LayoutTests/ChangeLog 2021-12-02 15:21:12 UTC (rev 286425) +++ trunk/LayoutTests/ChangeLog 2021-12-02 15:25:52 UTC (rev 286426) @@ -1,3 +1,16 @@ +2021-12-02 Tyler Wilcock + +AX Isolated Tree: Document links should be stored in web areas, not the root +https://bugs.webkit.org/show_bug.cgi?id=233728 + +Reviewed by Chris Fleizach. + +* accessibility/visible-elements.html: +* accessibility/visible-elements-expected.txt: +Make this test async so it passes in isolated tree mode. +This test must be async because it includes JS that dynamically +changes page content. + 2021-12-02 Kimmo Kinnunen GraphicsContextGLANGLE should not have Cocoa Mac specific display reconfiguration code Modified: trunk/LayoutTests/accessibility/visible-elements-expected.txt (286425 => 286426) --- trunk/LayoutTests/accessibility/visible-elements-expected.txt 2021-12-02 15:21:12 UTC (rev 286425) +++ trunk/LayoutTests/accessibility/visible-elements-expected.txt 2021-12-02 15:25:52 UTC (rev 286426) @@ -1,3 +1,16 @@ +This test ensures that document links appropriately respect a link's visibility. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS initialDocumentLinks.includes('#first-link') is true +PASS initialDocumentLinks.includes('#second-link') is false +PASS numberOfSubstringOccurences(initialDocumentLinks, 'AXRole: AXLink') is 1 +PASS finalDocumentLinks.includes('#first-link') is true +PASS finalDocumentLinks.includes('#second-link') is true +PASS numberOfSubstringOccurences(finalDocumentLinks, 'AXRole: AXLink') is 2 +PASS successfullyParsed is true + +TEST COMPLETE more hello -PASS Modified: trunk/LayoutTests/accessibility/visible-elements.html (286425 => 286426) --- trunk/LayoutTests/accessibility/visible-elements.html 2021-12-02 15:21:12 UTC (rev 286425) +++ trunk/LayoutTests/accessibility/visible-elements.html 2021-12-02 15:25:52 UTC (rev 286426) @@ -1,40 +1,45 @@ + + + + + +