[webkit-changes] [WebKit/WebKit] 1d4824: Cherry-pick 276261 at main (b65e2001a308). https://bu...
Vitaly Dyachkov
noreply at github.com
Tue Sep 3 03:29:35 PDT 2024
Branch: refs/heads/webkitglib/2.44
Home: https://github.com/WebKit/WebKit
Commit: 1d4824ae52feb74ac746e59bcfe1ebce8749985c
https://github.com/WebKit/WebKit/commit/1d4824ae52feb74ac746e59bcfe1ebce8749985c
Author: Philippe Normand <philn at igalia.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M LayoutTests/platform/glib/TestExpectations
M Source/WebCore/platform/gstreamer/VideoEncoderPrivateGStreamer.cpp
Log Message:
-----------
Cherry-pick 276261 at main (b65e2001a308). https://bugs.webkit.org/show_bug.cgi?id=271110
[GStreamer] Caps negotiation issue in video encoder for I422 formats
https://bugs.webkit.org/show_bug.cgi?id=271110
Reviewed by Xabier Rodriguez-Calvar.
The encoder was being configured to convert input buffers to Y422, which is not a valid GStreamer
video format. Use I422 instead.
* LayoutTests/platform/glib/TestExpectations:
* Source/WebCore/platform/gstreamer/VideoEncoderPrivateGStreamer.cpp:
(webkit_video_encoder_class_init):
Canonical link: https://commits.webkit.org/276261@main
Canonical link: https://commits.webkit.org/274313.376@webkitglib/2.44
Commit: e2bb9ccd6f785a927b35fc366775cc5cf293cc4d
https://github.com/WebKit/WebKit/commit/e2bb9ccd6f785a927b35fc366775cc5cf293cc4d
Author: Antti Koivisto <antti at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A LayoutTests/media/track/captions-webvtt/inline.vtt
A LayoutTests/media/track/webvtt-inline-expected.txt
A LayoutTests/media/track/webvtt-inline.html
M Source/WebCore/Modules/modern-media-controls/controls/text-tracks.css
M Source/WebCore/css/mediaControls.css
Log Message:
-----------
Cherry-pick 275918 at main (472c2a9abc39). https://bugs.webkit.org/show_bug.cgi?id=270783
REGRESSION(272743 at main): WebVTT default styling is broken
https://bugs.webkit.org/show_bug.cgi?id=270783
rdar://124380882
Reviewed by Anne van Kesteren.
272743 at main changed the attribute name for pseudo elements.
The WebVTT styling relied on those names.
* LayoutTests/media/track/captions-webvtt/inline.vtt: Added.
* LayoutTests/media/track/webvtt-inline-expected.txt: Added.
* LayoutTests/media/track/webvtt-inline.html: Added.
Add a test. We had no coverage.
* Source/WebCore/Modules/modern-media-controls/controls/text-tracks.css:
([useragentpart="-webkit-media-text-track-display"]):
(u):
(i):
(.hidden):
([pseudo="-webkit-media-text-track-display"] b): Deleted.
([pseudo="-webkit-media-text-track-display"] u): Deleted.
([pseudo="-webkit-media-text-track-display"] i): Deleted.
([pseudo="-webkit-media-text-track-display"] .hidden): Deleted.
* Source/WebCore/css/mediaControls.css:
([useragentpart="-webkit-media-text-track-display"]):
(u):
(i):
(.hidden):
Also add missing .hidden to this legacy stylesheet.
([pseudo="-webkit-media-text-track-display"] b): Deleted.
([pseudo="-webkit-media-text-track-display"] u): Deleted.
([pseudo="-webkit-media-text-track-display"] i): Deleted.
Canonical link: https://commits.webkit.org/275918@main
Canonical link: https://commits.webkit.org/274313.377@webkitglib/2.44
Commit: 2536b831c481ba3798e2f4396eec4c5e2147bf5c
https://github.com/WebKit/WebKit/commit/2536b831c481ba3798e2f4396eec4c5e2147bf5c
Author: Chris Dumez <cdumez at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxyInternals.h
Log Message:
-----------
Cherry-pick 275921 at main (0a93df5a4011). https://bugs.webkit.org/show_bug.cgi?id=270796
Regression: Pages that display notifications now get suspended as soon as backgrounded
https://bugs.webkit.org/show_bug.cgi?id=270796
rdar://124390299
Reviewed by Ben Nham.
We used to prevent suspension in the background of pages that show (or are
likely to show) notifications. However, we recently stopped taking
near-suspended assertions on both iOS and macOS and it broke this heuristic.
To address the issue, we now take a background activity whenever we get a
signal that a page displayed (or is likely to display) notifications. This way,
the page won't suspend after backgrounding, even though we're no longer taking
near-suspended assertions.
Note that the heuristic was also checking if a page updated its title while in
the background. This part of the heuristic is still broken and still needs to
be addressed in a follow-up.
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didCommitLoadForFrame):
(WebKit::WebPageProxy::didFailLoadForFrame):
(WebKit::WebPageProxy::resetStateAfterProcessExited):
(WebKit::WebPageProxy::pageWillLikelyUseNotifications):
(WebKit::WebPageProxy::showNotification):
* Source/WebKit/UIProcess/WebPageProxyInternals.h:
Canonical link: https://commits.webkit.org/275921@main
Canonical link: https://commits.webkit.org/274313.378@webkitglib/2.44
Commit: 2b1d61ab069aadcb26102dfd40965535b01f0a91
https://github.com/WebKit/WebKit/commit/2b1d61ab069aadcb26102dfd40965535b01f0a91
Author: Antti Koivisto <antti at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A LayoutTests/fast/animation/animation-with-DOM-mutation-and-display-none-expected.html
A LayoutTests/fast/animation/animation-with-DOM-mutation-and-display-none.html
M Source/WebCore/style/StyleTreeResolver.cpp
Log Message:
-----------
Cherry-pick 276035 at main (d83537abc7e7). https://bugs.webkit.org/show_bug.cgi?id=270697
REGRESSION (iOS 17.4, macOS 14.4, 270890 at main): Animating element with display: none still remain visible
https://bugs.webkit.org/show_bug.cgi?id=270697
rdar://124289418
Reviewed by Antoine Quint and Darin Adler.
The page sets the root of the overlay containing tree to display:none and immediately (before style recall) reinserts
it into another position in the document, causing render tree teardown. When we recompute the style (applying display:none)
we don't consider it a style change since there was no existing style due to the earlier teardown.
In this case we fail to clear lastStyleChangeEventStyle which has been set by an animation on the element.
Another animation triggered style recalc comes along, takes the optimized AnimationOnly code path and picks up
the lastStyleChangeEventStyle (which doesn't have display:none) bringing the element back alive.
* LayoutTests/fast/animation/animation-with-DOM-mutation-and-display-none-expected.html: Added.
* LayoutTests/fast/animation/animation-with-DOM-mutation-and-display-none.html: Added.
* Source/WebCore/style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::resolveElement):
Fix by clearing lastStyleChangeEventStyle also when we have a style change to display:none without existing renderer.
Canonical link: https://commits.webkit.org/276035@main
Canonical link: https://commits.webkit.org/274313.379@webkitglib/2.44
Commit: 8474f9911005fe75ff42666ceba3ac189e8aac82
https://github.com/WebKit/WebKit/commit/8474f9911005fe75ff42666ceba3ac189e8aac82
Author: David Degazio <d_degazio at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebCore/bindings/js/JSExecState.h
M Source/WebCore/bindings/js/ScriptController.cpp
M Source/WebCore/workers/WorkerOrWorkletScriptController.cpp
Log Message:
-----------
Cherry-pick 276190 at main (20cd6e8fdcc8). https://bugs.webkit.org/show_bug.cgi?id=270934
JSExecState::loadModule can dereference null result
https://bugs.webkit.org/show_bug.cgi?id=270934
rdar://121268593
Reviewed by Yusuke Suzuki.
Fixes a bug where JSExecState::loadModule always dereferenced the
result of JSC::loadModule, even though JSC::loadModule will return
null if there is an exception. This patch changes the return type
of JSExecState::loadModule to a raw pointer, so callers of it can
detect and handle null results returned from deeper calls.
* Source/WebCore/bindings/js/JSExecState.h:
(WebCore::JSExecState::loadModule):
* Source/WebCore/bindings/js/ScriptController.cpp:
(WebCore::ScriptController::loadModuleScriptInWorld):
* Source/WebCore/workers/WorkerOrWorkletScriptController.cpp:
(WebCore::WorkerOrWorkletScriptController::loadModuleSynchronously):
(WebCore::WorkerOrWorkletScriptController::loadAndEvaluateModule):
Canonical link: https://commits.webkit.org/276190@main
Canonical link: https://commits.webkit.org/274313.380@webkitglib/2.44
Commit: c9507c5fb075619276c721e87201eff162f11779
https://github.com/WebKit/WebKit/commit/c9507c5fb075619276c721e87201eff162f11779
Author: Matt Woodrow <mattwoodrow at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A LayoutTests/fast/clip/offscreen-transparency-clip-expected.html
A LayoutTests/fast/clip/offscreen-transparency-clip.html
M Source/WebCore/rendering/RenderLayer.cpp
Log Message:
-----------
Cherry-pick 276294 at main (afd16103076c). https://bugs.webkit.org/show_bug.cgi?id=270926
REGRESSION(268173 at main) Safari rendered bdiusa.com as all white.
https://bugs.webkit.org/show_bug.cgi?id=270926
<rdar://123983879>
Reviewed by Simon Fraser.
We're using transparencyClipBox to determine the size of the transparency layer to push,
and it's returning an empty rectangle.
It recurses through descendants, and finds a child layer positioned way off to the left
of the screen (at -33553151).
Due to limits of int32, adding the bounds of that child into the original rect
(0,0) width=1686 height=18933.45, results in (-33554430,0) width=33554432 height=18933.45
which no longer includes the visible area of the screen (except for the very left edge).
This fix moves the intersection with the dirty rect down to happen per-layer, so that
we clip before unioning the descendants in, and avoid this problem.
As the existing code comment mentions, it would still be preferable to take CSS clips
into account when computing these rectangles.
* LayoutTests/fast/clip/offscreen-transparency-clip-expected.html: Added.
* LayoutTests/fast/clip/offscreen-transparency-clip.html: Added.
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::transparencyClipBox):
(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::RenderLayer::beginTransparencyLayers):
(WebCore::paintingExtent): Deleted.
Canonical link: https://commits.webkit.org/276294@main
Canonical link: https://commits.webkit.org/274313.381@webkitglib/2.44
Commit: 14a1972f685fe66653ab55065fb6be53ea8b2149
https://github.com/WebKit/WebKit/commit/14a1972f685fe66653ab55065fb6be53ea8b2149
Author: Aditya Keerthi <akeerthi at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M LayoutTests/fast/forms/ios/select-option-removed-update.html
A LayoutTests/fast/forms/ios/select-option-update-1000-expected.txt
A LayoutTests/fast/forms/ios/select-option-update-1000.html
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/WebPage.h
M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm
Log Message:
-----------
Cherry-pick 276349 at main (cfd86982fcdf). https://bugs.webkit.org/show_bug.cgi?id=271138
REGRESSION (271805 at main): [iOS] Updating options in a visible <select> menu can result in hangs
https://bugs.webkit.org/show_bug.cgi?id=271138
rdar://124576235
Reviewed by Abrar Rahman Protyasha.
271805 at main introduced logic that would update a visible <select> menu's options
as they are changed. Currently, the logic sends an update every time an option is
added or removed. This is problematic when options are added in a loop, as (n - 1)
unnecessary IPC messages are sent, and O(n^2) menu items are constructed in the UI
process. Additionally, there is further overhead from auto layout. Consequently,
adding options in a loop can result in a hang when there is a visible <select> menu.
Fix by adding a debouncing mechanism, so that changes to options can be coalesced
into a single update.
* LayoutTests/fast/forms/ios/select-option-removed-update.html:
* LayoutTests/fast/forms/ios/select-option-update-1000-expected.txt: Added.
* LayoutTests/fast/forms/ios/select-option-update-1000.html: Added.
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close):
(WebKit::WebPage::elementDidFocus):
(WebKit::WebPage::focusedSelectElementDidChangeOptions):
* Source/WebKit/WebProcess/WebPage/WebPage.h:
Use a `DeferrableOneShotTimer` to ensure that any changes that happen within 100ms
are coalesced into a single update.
* Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::updateFocusedElementInformation):
Canonical link: https://commits.webkit.org/276349@main
Canonical link: https://commits.webkit.org/274313.382@webkitglib/2.44
Commit: fb3070e3f4473e65d9533a74589a6d99d630a3b3
https://github.com/WebKit/WebKit/commit/fb3070e3f4473e65d9533a74589a6d99d630a3b3
Author: Chris Dumez <cdumez at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm
M Source/WebKit/UIProcess/AuxiliaryProcessProxy.h
M Source/WebKit/UIProcess/Network/NetworkProcessProxy.h
M Source/WebKit/UIProcess/ProcessThrottler.cpp
M Source/WebKit/UIProcess/ProcessThrottler.h
R Source/WebKit/UIProcess/ProcessThrottlerClient.h
M Source/WebKit/UIProcess/WebProcessProxy.h
M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
Log Message:
-----------
Cherry-pick 274938 at main (e64b8cfcb1ee). https://bugs.webkit.org/show_bug.cgi?id=269605
Adopt more smart pointers in ProcessThrottler
https://bugs.webkit.org/show_bug.cgi?id=269605
Reviewed by Per Arne Vollan.
Adopt more smart pointers in ProcessThrottler. Also drop the ProcessThrottlerClient
abstraction since ProcessThrottler already has a pointer back to the
AuxiliaryProcessProxy, which is the only ProcessThrottlerClient. This simplifies
the code a bit and gets rid of an unnecessary data member.
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm:
(-[WKWebView _processDidResumeForTesting]):
* Source/WebKit/UIProcess/AuxiliaryProcessProxy.h:
(WebKit::AuxiliaryProcessProxy::isRunning const):
(WebKit::AuxiliaryProcessProxy::didChangeThrottleState):
(WebKit::AuxiliaryProcessProxy::environmentIdentifier const):
(WebKit::AuxiliaryProcessProxy::prepareToDropLastAssertion):
(WebKit::AuxiliaryProcessProxy::didDropLastAssertion):
* Source/WebKit/UIProcess/Network/NetworkProcessProxy.h:
* Source/WebKit/UIProcess/ProcessThrottler.cpp:
(WebKit::ProcessThrottler::ProcessThrottler):
(WebKit::ProcessThrottler::assertionName const):
(WebKit::ProcessThrottler::setThrottleState):
(WebKit::ProcessThrottler::ref):
(WebKit::ProcessThrottler::deref):
(WebKit::ProcessThrottler::updateThrottleStateIfNeeded):
(WebKit::ProcessThrottler::didConnectToProcess):
(WebKit::ProcessThrottler::didDisconnectFromProcess):
(WebKit::ProcessThrottler::sendPrepareToSuspendIPC):
(WebKit::ProcessThrottler::setShouldTakeNearSuspendedAssertion):
(WebKit::ProcessThrottler::clearAssertion):
(WebKit::ProcessThrottler::protectedProcess const):
(WebKit::ProcessThrottler::isSuspended const):
(WebKit::ProcessThrottlerActivity::invalidate):
* Source/WebKit/UIProcess/ProcessThrottler.h:
* Source/WebKit/UIProcess/ProcessThrottlerClient.h: Removed.
* Source/WebKit/UIProcess/WebProcessProxy.h:
* Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::sendNetworkProcessDidResume):
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
Canonical link: https://commits.webkit.org/274938@main
Canonical link: https://commits.webkit.org/274313.383@webkitglib/2.44
Commit: 8eb5168bcbc5e69b8638413d18d90514bf72c7f5
https://github.com/WebKit/WebKit/commit/8eb5168bcbc5e69b8638413d18d90514bf72c7f5
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebKit/UIProcess/WebPageProxy.cpp
Log Message:
-----------
Cherry-pick 275540 at main (6a7b2d62c794). https://bugs.webkit.org/show_bug.cgi?id=269699
[GTK] Crash in WebPageProxy::getLoadDecisionForIcon
https://bugs.webkit.org/show_bug.cgi?id=269699
Reviewed by Michael Catanzaro.
This probably regressed in 274563 at main, that changed the way a
SharedBuffer is serialized for IPC and now segments are sent, instead of
the contiguous. So, in getLoadDecisionForIcon() we need to handle the
case of data being non contiguous, by using SharedBufferReference::unsafeBuffer()
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::getLoadDecisionForIcon):
Canonical link: https://commits.webkit.org/275540@main
Canonical link: https://commits.webkit.org/274313.384@webkitglib/2.44
Commit: d94e4b9083bc3ba9bdafd3570fc463edb00ad36e
https://github.com/WebKit/WebKit/commit/d94e4b9083bc3ba9bdafd3570fc463edb00ad36e
Author: Erica Li <lerica at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A LayoutTests/fast/images/imageDocument-appendBytes-crash-expected.txt
A LayoutTests/fast/images/imageDocument-appendBytes-crash.html
M Source/WebCore/html/ImageDocument.cpp
Log Message:
-----------
Cherry-pick 275537 at main (bac31e80659a). https://bugs.webkit.org/show_bug.cgi?id=270283.
Null pointer dereference in WebCore::ImageDocument::createDocumentStructure.
https://bugs.webkit.org/show_bug.cgi?id=270283.
rdar://122779661.
Reviewed by Chris Dumez.
Adding null check to prevent the cases where local frame would be detached during createDocumentStructure.
* LayoutTests/fast/images/imageDocument-appendBytes-crash-expected.txt: Added.
* LayoutTests/fast/images/imageDocument-appendBytes-crash.html: Added.
* Source/WebCore/html/ImageDocument.cpp:
(WebCore::ImageDocument::updateDuringParsing):
(WebCore::ImageDocument::createDocumentStructure):
Canonical link: https://commits.webkit.org/275537@main
Canonical link: https://commits.webkit.org/274313.385@webkitglib/2.44
Commit: 9a8dae2cd99dc36ad27fd672cceddb003ea99dcc
https://github.com/WebKit/WebKit/commit/9a8dae2cd99dc36ad27fd672cceddb003ea99dcc
Author: Claudio Saavedra <csaavedra at igalia.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp
Log Message:
-----------
Cherry-pick 275559 at main (291cc0752318). https://bugs.webkit.org/show_bug.cgi?id=270355
[WPE] Fix build in older platforms
https://bugs.webkit.org/show_bug.cgi?id=270355
Unreviewed build fix.
The include was wrong, even if WPE_PLATFORM is not enabled,
the DMABufRendererBufferFormat definition is needed for
the empty vector.
* Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:
Canonical link: https://commits.webkit.org/275559@main
Canonical link: https://commits.webkit.org/274313.386@webkitglib/2.44
Commit: 30e2720e7a0a2d681e5832f503a28380da945b6b
https://github.com/WebKit/WebKit/commit/30e2720e7a0a2d681e5832f503a28380da945b6b
Author: Matthew Finkel <sysrqb at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp
Log Message:
-----------
Cherry-pick 275572 at main (4caf2bb34aab). https://bugs.webkit.org/show_bug.cgi?id=270208
Simplify handling addGrant result when granting storage access
https://bugs.webkit.org/show_bug.cgi?id=270208
rdar://123728856
Reviewed by Charlie Wolfe.
In 271821 at main I added support for granting storage access for a group of
domains. This change simplifies part of that logic.
* Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:
(WebKit::ResourceLoadStatisticsStore::grantStorageAccess):
Canonical link: https://commits.webkit.org/275572@main
Canonical link: https://commits.webkit.org/274313.387@webkitglib/2.44
Commit: d6dd2741311a857f845a9bad2a8e4a13b7df04a5
https://github.com/WebKit/WebKit/commit/d6dd2741311a857f845a9bad2a8e4a13b7df04a5
Author: Nikolaos Mouchtaris <nmouchtaris at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp
Log Message:
-----------
Cherry-pick 275574 at main (0c592c9b1e0c). https://bugs.webkit.org/show_bug.cgi?id=270361
Crash under ScrollingStateFixedNode::reconcileLayerPositionForViewportRect
https://bugs.webkit.org/show_bug.cgi?id=270361
rdar://105887621
Reviewed by Simon Fraser.
We need a similar fix to https://github.com/WebKit/WebKit/pull/17453 as there is
the same crash signature under ScrollingStateFixedNode::reconcileLayerPositionForViewportRect
this time.
* Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp:
(WebCore::ScrollingStateFixedNode::reconcileLayerPositionForViewportRect):
Canonical link: https://commits.webkit.org/275574@main
Canonical link: https://commits.webkit.org/274313.388@webkitglib/2.44
Commit: 5b2a8fea4f677d451820b296599082e41da504f1
https://github.com/WebKit/WebKit/commit/5b2a8fea4f677d451820b296599082e41da504f1
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A LayoutTests/fast/images/create-image-bitmap-after-stopping-script-execution-context-expected.txt
A LayoutTests/fast/images/create-image-bitmap-after-stopping-script-execution-context.html
M Source/WebCore/html/ImageBitmap.cpp
Log Message:
-----------
Cherry-pick 275581 at main (198cfb4f193c). https://bugs.webkit.org/show_bug.cgi?id=270379
Assertion failure in ~CompletionHandler() via ImageBitmap::createCompletionHandler
https://bugs.webkit.org/show_bug.cgi?id=270379
Reviewed by Wenson Hsieh.
Call the completion handler when exiting early in PendingImageBitmap::fetch.
* LayoutTests/fast/images/create-image-bitmap-after-stopping-script-execution-context-expected.txt: Added.
* LayoutTests/fast/images/create-image-bitmap-after-stopping-script-execution-context.html: Added.
* Source/WebCore/html/ImageBitmap.cpp:
Canonical link: https://commits.webkit.org/275581@main
Canonical link: https://commits.webkit.org/274313.389@webkitglib/2.44
Commit: ff0a81399f1a11fc93f3f8b318b655419740fcd0
https://github.com/WebKit/WebKit/commit/ff0a81399f1a11fc93f3f8b318b655419740fcd0
Author: Ben Nham <nham at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebKit/UIProcess/WebProcessPool.cpp
M Source/WebKit/UIProcess/WebProcessPool.h
M Source/WebKit/UIProcess/WebProcessProxy.cpp
M Source/WebKit/WebProcess/WebProcess.cpp
M Source/WebKit/WebProcess/WebProcess.h
M Source/WebKit/WebProcess/WebProcess.messages.in
Log Message:
-----------
Cherry-pick 275588 at main (199ca3488158). https://bugs.webkit.org/show_bug.cgi?id=270236
Avoid updating hidden page timer throttling interval for suspended processes
https://bugs.webkit.org/show_bug.cgi?id=270236
rdar://problem/123773191
Reviewed by Chris Dumez.
Currently, every time a tab is created or destroyed, we update the hidden page timer throttling
interval and broadcast the change to all processes, including suspended processes. While this
doesn't cause a suspended process to resume, it can cause messages to build up in IPC queues that
never get drained. This is because the receiver might be a suspended WebContent process.
To avoid this, skip sending the timer throttling interval to suspended processes and defer the
update until the resume IPC.
* Source/WebKit/UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::hiddenPageThrottlingAutoIncreaseLimit):
(WebKit::WebProcessPool::updateHiddenPageThrottlingAutoIncreaseLimit):
* Source/WebKit/UIProcess/WebProcessPool.h:
(WebKit::WebProcessPool::sendToAllProcesses):
(WebKit::WebProcessPool::sendToAllProcessesForSession):
(WebKit::WebProcessPool::sendToAllRemoteWorkerProcesses):
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::sendProcessDidResume):
* Source/WebKit/WebProcess/WebProcess.cpp:
(WebKit::WebProcess::setHiddenPageDOMTimerThrottlingIncreaseLimit):
(WebKit::WebProcess::processDidResume):
* Source/WebKit/WebProcess/WebProcess.h:
* Source/WebKit/WebProcess/WebProcess.messages.in:
Canonical link: https://commits.webkit.org/275588@main
Canonical link: https://commits.webkit.org/274313.390@webkitglib/2.44
Commit: 24e2a5805647d851d055bd0137625893df0ac176
https://github.com/WebKit/WebKit/commit/24e2a5805647d851d055bd0137625893df0ac176
Author: Dennis Camera <dennis.camera+webkit at riiengineering.ch>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h
Log Message:
-----------
Cherry-pick 275630 at main (56001e951362). https://bugs.webkit.org/show_bug.cgi?id=270394
[JSC] A64DOpcode include <mutex>
https://bugs.webkit.org/show_bug.cgi?id=270394
Reviewed by Michael Catanzaro.
When UNIFIED_BUILDS are disabled, the build fails due to missing std::call_once.
* Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h: include <mutex>.
Canonical link: https://commits.webkit.org/275630@main
Canonical link: https://commits.webkit.org/274313.391@webkitglib/2.44
Commit: 62cae94447836247cc409487afaa0b92a523b101
https://github.com/WebKit/WebKit/commit/62cae94447836247cc409487afaa0b92a523b101
Author: Megan Gardner <megan_gardner at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M LayoutTests/imported/w3c/web-platform-tests/scroll-to-text-fragment/scroll-to-text-fragment-target.html
M LayoutTests/imported/w3c/web-platform-tests/scroll-to-text-fragment/scroll-to-text-fragment.html
M Source/WebCore/dom/Document.cpp
M Source/WebCore/loader/DocumentLoader.cpp
M Source/WebCore/page/Page.cpp
M Source/WebCore/page/Page.h
Log Message:
-----------
Cherry-pick 281273 at main (1d776f617268). https://bugs.webkit.org/show_bug.cgi?id=276925
Scroll-to-text-fragment is leaked to the loaded page through Navigation Timing.
https://bugs.webkit.org/show_bug.cgi?id=276925
rdar://124717009
Reviewed by Ryosuke Niwa.
We need to strip the fragment from the URL earlier so that the full URL does not end up
in the performance metrics, leaking the fragment that should be invisible to the page.
WPT test will need to be upstreamed after this patch lands.
* LayoutTests/imported/w3c/web-platform-tests/scroll-to-text-fragment/scroll-to-text-fragment-target.html:
* LayoutTests/imported/w3c/web-platform-tests/scroll-to-text-fragment/scroll-to-text-fragment.html:
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::setURL):
* Source/WebCore/loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::startLoadingMainResource):
* Source/WebCore/page/Page.cpp:
(WebCore::Page::setMainFrameURLFragment):
* Source/WebCore/page/Page.h:
(WebCore::Page::mainFrameURLFragment const):
Canonical link: https://commits.webkit.org/281273@main
Canonical link: https://commits.webkit.org/274313.392@webkitglib/2.44
Commit: e4980fa56ea37c1ce33f3141fbdd7164f6e050f5
https://github.com/WebKit/WebKit/commit/e4980fa56ea37c1ce33f3141fbdd7164f6e050f5
Author: Jonathan Bedard <jbedard at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Tools/Scripts/libraries/webkitcorepy/webkitcorepy/autoinstall.py
Log Message:
-----------
Cherry-pick 279706 at main (5ab9e6cd5bad). https://bugs.webkit.org/show_bug.cgi?id=263825
[webkitcorepy] Failed to install setuptools
https://bugs.webkit.org/show_bug.cgi?id=263825
rdar://117940593
Reviewed by Dewei Zhu and Oriol Brufau.
* Tools/Scripts/libraries/webkitcorepy/webkitcorepy/autoinstall.py:
(Package.install): Differentiate between files and folders when removing
existing autoinstalled content.
Canonical link: https://commits.webkit.org/279706@main
Canonical link: https://commits.webkit.org/274313.393@webkitglib/2.44
Commit: 72b8bce49442b2e24db984d82dba4fb583ff480b
https://github.com/WebKit/WebKit/commit/72b8bce49442b2e24db984d82dba4fb583ff480b
Author: Devin Rousso <hi at devinrousso.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebInspectorUI/UserInterface/Models/Recording.js
M Source/WebInspectorUI/UserInterface/Models/RecordingAction.js
Log Message:
-----------
Cherry-pick 280147 at main (cba08d5a8e69). https://bugs.webkit.org/show_bug.cgi?id=275539
Web Inspector: REGRESSION(252630 at main): Canvas: clicking on trace call frame doesn't jump to source
https://bugs.webkit.org/show_bug.cgi?id=275539
Reviewed by Timothy Hatcher.
`WI.StackTrace.fromPayload` expects that the `callFrames` property in the `payload` parameter are protocol payloads, not actual `WI.CallFrame` objects.
* Source/WebInspectorUI/UserInterface/Models/Recording.js:
(WI.Recording.prototype.async swizzle):
* Source/WebInspectorUI/UserInterface/Models/RecordingAction.js:
(WI.RecordingAction.prototype.async swizzle):
Canonical link: https://commits.webkit.org/280147@main
Canonical link: https://commits.webkit.org/274313.394@webkitglib/2.44
Commit: 8bbc43b4355ce7782564810d3e55487ba6b28e90
https://github.com/WebKit/WebKit/commit/8bbc43b4355ce7782564810d3e55487ba6b28e90
Author: Devin Rousso <hi at devinrousso.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebInspectorUI/UserInterface/Views/CanvasSidebarPanel.css
Log Message:
-----------
Cherry-pick 280145 at main (7336e06e94b0). https://bugs.webkit.org/show_bug.cgi?id=275540
Web Inspector: REGRESSION(?): Canvas: cannot scroll list of WebGL shader programs
https://bugs.webkit.org/show_bug.cgi?id=275540
Reviewed by Timothy Hatcher.
* Source/WebInspectorUI/UserInterface/Views/CanvasSidebarPanel.css:
(.sidebar > .panel.navigation.canvas:not(.showing-recording) > .content): Added.
(.sidebar > .panel.navigation.canvas > .content > .tree-outline.canvas): Added.
(.sidebar > .panel.navigation.canvas:not(.showing-recording) > .content > .navigation-bar): Added.
(.sidebar > .panel.navigation.canvas.showing-recording > .content > .tree-outline.canvas):
(.sidebar > .panel.navigation.canvas:not(.showing-recording) > :is(.filter-bar, .overflow-shadow), .sidebar > .panel.navigation.canvas:not(.has-recordings) > .content > :is(.navigation-bar, .recording-content)): Added.
(.sidebar > .panel.navigation.canvas:not(.has-recordings) > .filter-bar, .sidebar > .panel.navigation.canvas:not(.has-recordings) > .content > :is(.navigation-bar, .recording-content)): Deleted.
Move the `overflow-y: auto;` to always apply instead of only when a recording is selected.
Also ensure that the recording scope bar is always visible if there are recordings.
Drive-by: prevent the overflow shadow and filter bar from being shown when a recording is not selected.
Canonical link: https://commits.webkit.org/280145@main
Canonical link: https://commits.webkit.org/274313.395@webkitglib/2.44
Commit: d0604cff548ea5f7ad5340a40f4695a8fa11e46f
https://github.com/WebKit/WebKit/commit/d0604cff548ea5f7ad5340a40f4695a8fa11e46f
Author: Simon Fraser <simon.fraser at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M LayoutTests/fast/box-shadow/negative-shadow-box-expand-expected.txt
M LayoutTests/fast/box-shadow/negative-shadow-box-shrink-expected.txt
A LayoutTests/fast/repaint/4776765-expected.txt
A LayoutTests/fast/repaint/outline-bounds-repaint-expected.txt
A LayoutTests/fast/repaint/outline-bounds-repaint.html
M LayoutTests/platform/gtk/fast/repaint/4776765-expected.txt
M LayoutTests/platform/mac-ventura-wk2/fast/repaint/4776765-expected.txt
M LayoutTests/platform/mac-wk1/fast/repaint/4776765-expected.txt
R LayoutTests/platform/mac/fast/repaint/4776765-expected.txt
M Source/WebCore/rendering/RenderBox.cpp
Log Message:
-----------
Cherry-pick 279717 at main (939b1069b0b6). https://bugs.webkit.org/show_bug.cgi?id=275090
REGRESSION (271254 at main): Partial box-shadow left behind when resizing elements
https://bugs.webkit.org/show_bug.cgi?id=275090
rdar://121966069
Reviewed by Alan Baradlay.
In 271254 at main, RenderBox::localOutlineBoundsRepaintRect() failed to actually return the
modified rect, resulting in under-repainting when an element with box-shadow or outlines
changed size.
* LayoutTests/fast/box-shadow/negative-shadow-box-expand-expected.txt:
* LayoutTests/fast/box-shadow/negative-shadow-box-shrink-expected.txt:
* LayoutTests/fast/repaint/4776765-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/4776765-expected.txt.
* LayoutTests/fast/repaint/outline-bounds-repaint-expected.txt: Added.
* LayoutTests/fast/repaint/outline-bounds-repaint.html: Added.
* LayoutTests/platform/gtk/fast/repaint/4776765-expected.txt:
* LayoutTests/platform/mac-ventura-wk2/fast/repaint/4776765-expected.txt:
* LayoutTests/platform/mac-wk1/fast/repaint/4776765-expected.txt:
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::localOutlineBoundsRepaintRect const):
Canonical link: https://commits.webkit.org/279717@main
Canonical link: https://commits.webkit.org/274313.396@webkitglib/2.44
Commit: adb80b92153e32c45fdd00daa3eeef9e66d60abe
https://github.com/WebKit/WebKit/commit/adb80b92153e32c45fdd00daa3eeef9e66d60abe
Author: Patrick Griffis <pgriffis at igalia.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebKit/UIProcess/wpe/AcceleratedBackingStoreDMABuf.cpp
Log Message:
-----------
Cherry-pick 276937 at main (10960413a084). https://bugs.webkit.org/show_bug.cgi?id=272030
[WPE] Fix build failure after 273995 at main
https://bugs.webkit.org/show_bug.cgi?id=272030
Reviewed by Adrian Perez de Castro.
This moved some classes from the WebKit to WebCore namespace.
* Source/WebKit/UIProcess/wpe/AcceleratedBackingStoreDMABuf.cpp:
(WebKit::AcceleratedBackingStoreDMABuf::didCreateBufferSHM):
Canonical link: https://commits.webkit.org/276937@main
Canonical link: https://commits.webkit.org/274313.397@webkitglib/2.44
Commit: f4afc09e58f6919c7211bbb81356f82b52b7b174
https://github.com/WebKit/WebKit/commit/f4afc09e58f6919c7211bbb81356f82b52b7b174
Author: Simon Fraser <simon.fraser at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A LayoutTests/compositing/shared-backing/composited-descendants-should-prevent-sharing-expected.html
A LayoutTests/compositing/shared-backing/composited-descendants-should-prevent-sharing.html
M LayoutTests/platform/ios-wk2/scrollingcoordinator/scrolling-tree/absolute-in-nested-overflow-scroll-expected.txt
M LayoutTests/scrollingcoordinator/scrolling-tree/absolute-in-nested-overflow-scroll-expected.txt
M Source/WebCore/rendering/RenderLayerCompositor.cpp
Log Message:
-----------
Cherry-pick 276720 at main (6fa1d3b94cd7). https://bugs.webkit.org/show_bug.cgi?id=271710
REGRESSION (273999 at main): Elements fail to render in Spinnaker
https://bugs.webkit.org/show_bug.cgi?id=271710
rdar://124483601
Reviewed by Alan Baradlay.
273999 at main reverted some backing sharing behavior to an older configuration, but this brought back
a bug which affects Spinnaker dashboards. The test reduction has a series of overflow scrollers, both
siblings and nested, and an element later in the tree that ends up obscured when the bug occurs.
A simplified paint-order tree dump (via the Compositing log channel) looks like this:
-S---------C-c-- 0x118000810 RenderView 0x1180002c0
-S-----------c-- + 0x118001850 RenderBlock 0x118001700 HTML 0x118001050
-S---------C-c-- + 0x1180044a0 RenderBlock (relative positioned) 0x118004350 DIV 0x118003350 class='container'
-S-O-----XxC---- - 0x118004740 RenderTextControl 0x118005460 TEXTAREA 0x118003c20 class='fixed'
---O-------CPc-- + 0x1180049e0 RenderBlock (relative positioned) 0x1180045f0 DIV 0x1180033d0 id='main'
--NO-------C-c-- n 0x118004dd0 RenderBlock 0x118004890 DIV 0x118003530 class='outer-scroller'
--NO-------C--s- n 0x118005070 RenderBlock 0x118004c80 DIV 0x1180035b0 class='scroller'
------------p-s- + 0x1180055b0 RenderBlock (relative positioned) 0x1180051c0 DIV 0x118003790 class='indicator'
Note the P on '0x1180049e0' indicating that it's a shared backing provider, and the p on '0x1180055b0' showing that
it paints into that shared backing. However, the normal flow descendant layers of 0x1180049e0 (0x118004dd0 and 0x118005070)
are both [C]composited, so they appear on top of 0x1180055b0, which is the bug.
A composited layer normally interrupts a backing sharing sequence. However, we only determined that 0x1180049e0 could
be a backing provider after traversing its descendant layers in `updateBackingSharingAfterDescendantTraversal()`,
and made it one despite it having composited descendants. So fix `updateBackingSharingAfterDescendantTraversal()`
to check that.
This undoes the backing sharing that happened in `scrollingcoordinator/scrolling-tree/absolute-in-nested-overflow-scroll`,
but that sharing was undone on scrolling anyway.
* LayoutTests/compositing/shared-backing/composited-descendants-should-prevent-sharing-expected.html: Added.
* LayoutTests/compositing/shared-backing/composited-descendants-should-prevent-sharing.html: Added.
* Source/WebCore/rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateBackingSharingAfterDescendantTraversal):
Canonical link: https://commits.webkit.org/276720@main
Canonical link: https://commits.webkit.org/274313.398@webkitglib/2.44
Commit: 11b35bc8d2a50d67e20a7b1ec0c24a9485a16066
https://github.com/WebKit/WebKit/commit/11b35bc8d2a50d67e20a7b1ec0c24a9485a16066
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/JavaScriptCore/llint/LLIntOpcode.h
M Source/JavaScriptCore/llint/LowLevelInterpreter.cpp
Log Message:
-----------
Revert "BYTECODE_HELPER_ID LLint opcodes need look up for wide versions."
This reverts commit aa62ce7b905994f278e4661ae4c7425ce400be01.
Canonical link: https://commits.webkit.org/274313.399@webkitglib/2.44
Commit: 2fd522326fdd6ff705560fa437a8bc09e56b284e
https://github.com/WebKit/WebKit/commit/2fd522326fdd6ff705560fa437a8bc09e56b284e
Author: Sammy Gill <sammy.gill at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A PerformanceTests/Layout/nested-grid-subgrid-free-space-columns.html
M Source/WebCore/Headers.cmake
M Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp
M Source/WebCore/rendering/RenderGrid.cpp
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/rendering/style/RenderStyleInlines.h
Log Message:
-----------
Cherry-pick 276633 at main (ba849a630cec). https://bugs.webkit.org/show_bug.cgi?id=271083
[css-grid] Grid track sizing algorithm logical height computation unnecessarily dirties grid items.
https://bugs.webkit.org/show_bug.cgi?id=271083
rdar://124713418
Reviewed by Matt Woodrow.
In certain situations when trying to compute the logical height for a
grid item, the grid track sizing algorithm will update the grid item's
overriding containing block size and mark it dirty for layout. This
dirtying would occur even it we end up setting the override size to the
same value and could result in bad performance with particular types
of content. For example, nested grid content would run grid layout
multiple times which is currently expensive.
In this patch we avoid this extra call to layout by checking to see if
the override size is already set to the value we are attempting to set
it to. If it is then we will avoid dirtying the renderer.
This also ended up exposing an invalidation bug in which we were not
properly invalidating the grid items when there was a style change on
the grid related to its column or row sizes. This was demonstrated with
new failures in css-grid/layout-algorithm/grid-intrinsic-track-sizes-001.html
which was performing this behavior. Now when the grid style changes we
will check to see if any of the sizes for the columns or the rows are
different. If this occurs we should mark the grid items as dirty. This
is likely to be more than necessary since we could probably try to
identify the exact set of grid items that need to be invalidated, but
this approach is the least risky for now. Future patches should attempt
to reign this invalidation in a bit more.
Without this patch I was getting about 2 runs/s and afterwards I was
able to get about ~690 runs/s.
* PerformanceTests/Layout/nested-grid-subgrid-free-space-columns.html: Added.
* Source/WebCore/Headers.cmake:
* Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithmStrategy::logicalHeightForChild const):
* Source/WebCore/rendering/RenderGrid.cpp:
(WebCore::RenderGrid::styleDidChange):
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
(WebCore::RenderStyle::gridTrackSizes const):
Canonical link: https://commits.webkit.org/276633@main
Canonical link: https://commits.webkit.org/274313.400@webkitglib/2.44
Commit: 0b7bd0777686696923126fb5006a35aefd0ea89f
https://github.com/WebKit/WebKit/commit/0b7bd0777686696923126fb5006a35aefd0ea89f
Author: Justin Michaud <justin_michaud at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A JSTests/wasm/stress/omg-stack-overflow.js
A JSTests/wasm/stress/omg-stack-overflow.wasm
M Source/JavaScriptCore/wasm/WasmOperations.cpp
Log Message:
-----------
Cherry-pick 276645 at main (3a0671fdf831). https://bugs.webkit.org/show_bug.cgi?id=270605
Add missing stack check to bbq->omg OSR
https://bugs.webkit.org/show_bug.cgi?id=270605
rdar://124060272
Reviewed by Keith Miller.
In https://commits.webkit.org/272448.466@safari-7618-branch, we turned
a stack overflow during OSR entry into a crash, preventing a security
issue. While the crash prevents memory corruption, it should never
happen. This patch fixes a case that was missed in the first patch.
Note: the test case currently runs forever, so it is skipped until
we fix the watchdog in wasm.
* JSTests/wasm/stress/omg-stack-overflow.js: Added.
(globalThis.callerIsBBQOrOMGCompiled.instantiateJsc):
(else.instantiateBrowser):
(async let):
* JSTests/wasm/stress/omg-stack-overflow.wasm: Added.
* Source/JavaScriptCore/wasm/WasmOperations.cpp:
(JSC::Wasm::JSC_DEFINE_JIT_OPERATION):
Originally-landed-as: 272448.704 at safari-7618-branch (36930ea8be72). rdar://125261536
Canonical link: https://commits.webkit.org/276645@main
Canonical link: https://commits.webkit.org/274313.401@webkitglib/2.44
Commit: 9dfda8a33ac583e608e236e47b3987b52e2e7cd4
https://github.com/WebKit/WebKit/commit/9dfda8a33ac583e608e236e47b3987b52e2e7cd4
Author: Justin Michaud <justin_michaud at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
A JSTests/wasm/stress/omg-osr-stack-check-2.js
A JSTests/wasm/stress/omg-osr-stack-check-2.wasm
M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp
M Source/JavaScriptCore/wasm/WasmCallee.h
M Source/JavaScriptCore/wasm/WasmOperations.cpp
M Source/JavaScriptCore/wasm/WasmSlowPaths.cpp
Log Message:
-----------
Cherry-pick 276682 at main (4322c3bd5293). https://bugs.webkit.org/show_bug.cgi?id=271011
Stack check size can be zero if omg skips stack checks.
https://bugs.webkit.org/show_bug.cgi?id=271011
rdar://124390384
Reviewed by Yusuke Suzuki.
For leaf functions that have really small stacks, this stack check can
be skipped and the ASSERT(stackCheckSize()) is wrong.
We change the assert to ensure that the stack check size is set, but
if it is not needed, we can skip the stack check.
* Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::parseAndCompileB3):
* Source/JavaScriptCore/wasm/WasmCallee.h:
Originally-landed-as: 272448.753 at safari-7618-branch (aef93328873d). rdar://124390384
Canonical link: https://commits.webkit.org/276682@main
Canonical link: https://commits.webkit.org/274313.402@webkitglib/2.44
Commit: d5151e75c73766fc321989e24fb138040aa9112a
https://github.com/WebKit/WebKit/commit/d5151e75c73766fc321989e24fb138040aa9112a
Author: Richard Robinson <richard_robinson2 at apple.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebKit/UIProcess/UserContent/WebUserContentControllerProxy.cpp
Log Message:
-----------
Cherry-pick 282880 at main (d1ee6bc865cb). https://bugs.webkit.org/show_bug.cgi?id=278809
Debug assertion occasionally triggered in Mail via `WebUserContentControllerProxy::didPostMessage`
https://bugs.webkit.org/show_bug.cgi?id=278809
rdar://134879673
Reviewed by Abrar Rahman Protyasha.
Ensure the completion handler is always called in this method.
* Source/WebKit/UIProcess/UserContent/WebUserContentControllerProxy.cpp:
(WebKit::WebUserContentControllerProxy::didPostMessage):
Canonical link: https://commits.webkit.org/282880@main
Canonical link: https://commits.webkit.org/274313.403@webkitglib/2.44
Commit: 70a60da0ef74d9d67ce6828d4b27f10a292c6931
https://github.com/WebKit/WebKit/commit/70a60da0ef74d9d67ce6828d4b27f10a292c6931
Author: Vitaly Dyachkov <vitaly at igalia.com>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M Source/WebCore/xml/XPathNodeSet.cpp
Log Message:
-----------
Cherry-pick 282842 at main (54db0db4919d). https://bugs.webkit.org/show_bug.cgi?id=278781
Some `fast/xpath` tests hit an assertion in release with `ENABLE_ASSERTS=1`
https://bugs.webkit.org/show_bug.cgi?id=278781
Reviewed by Anne van Kesteren.
The code assumes that `ASSERT()` macro is only enabled in debug builds,
but it can be enabled in release builds too using `ENABLE_ASSERTS=1`.
* Source/WebCore/xml/XPathNodeSet.cpp:
(WebCore::XPath::sortBlock):
Canonical link: https://commits.webkit.org/282842@main
Canonical link: https://commits.webkit.org/274313.404@webkitglib/2.44
Commit: fd92484c3922ecf096d8381f49e7a70158ae74b6
https://github.com/WebKit/WebKit/commit/fd92484c3922ecf096d8381f49e7a70158ae74b6
Author: Philippe Normand <philn at igalia.com>
Date: 2024-09-03 (Tue, 03 Sep 2024)
Changed paths:
M Source/WebCore/platform/graphics/gstreamer/GStreamerSinksWorkarounds.cpp
Log Message:
-----------
Cherry-pick 283051 at main (03e1d775d51d). https://bugs.webkit.org/show_bug.cgi?id=278989
[GStreamer] Memory leak in GStreamerSinksWorkarounds
https://bugs.webkit.org/show_bug.cgi?id=278989
Reviewed by Alicia Boya Garcia.
* Source/WebCore/platform/graphics/gstreamer/GStreamerSinksWorkarounds.cpp:
(WebCore::AppSinkFlushCapsWorkaroundProbe::checkIsNeeded): Make sure the string allocated in
gst_plugins_base_version_string() is de-allocated afterwards.
Canonical link: https://commits.webkit.org/283051@main
Canonical link: https://commits.webkit.org/274313.405@webkitglib/2.44
Commit: 3637305650ee77c7163f09bb6a0a3d387a4e6a2d
https://github.com/WebKit/WebKit/commit/3637305650ee77c7163f09bb6a0a3d387a4e6a2d
Author: Vitaly Dyachkov <vitaly at igalia.com>
Date: 2024-09-03 (Tue, 03 Sep 2024)
Changed paths:
M Source/WebCore/xml/XPathNodeSet.cpp
Log Message:
-----------
Cherry-pick 282992 at main (7ce6a1c447e1). https://bugs.webkit.org/show_bug.cgi?id=278781
Some `fast/xpath` tests hit an assertion in release with `ENABLE_ASSERTS=1`
https://bugs.webkit.org/show_bug.cgi?id=278781
Reviewed by Alexey Proskuryakov.
In https://github.com/WebKit/WebKit/pull/32818 @aproskuryakov rightly
noted that "when someone builds with ENABLE_ASSERTS=1, they presumably
want the asserts to work, not to be ifdefed out".
* Source/WebCore/xml/XPathNodeSet.cpp:
(WebCore::XPath::sortBlock):
Canonical link: https://commits.webkit.org/282992@main
Canonical link: https://commits.webkit.org/274313.406@webkitglib/2.44
Compare: https://github.com/WebKit/WebKit/compare/83e0705053cc...3637305650ee
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list