[webkit-changes] [286414] trunk
Title: [286414] trunk Revision 286414 Author sihui_...@apple.com Date 2021-12-01 22:27:47 -0800 (Wed, 01 Dec 2021) Log Message FileSystemSyncAccessHandle should be invalidated when network process crashes https://bugs.webkit.org/show_bug.cgi?id=232605 Reviewed by Youenn Fablet. Source/WebCore: Make FileSystemStorageConnection keep track of FileSystemSyncAccessHandle. When connection is closed, or access handle is explicitly invalidated (for example, due to file deletion in the backend), FileSystemStorageConnection will invalidate FileSystemSyncAccessHandle. Normally, to close a FileSystemSyncAccessHandle (when close() is called or context stops), we need to: 1. close file descriptor (FileSystemSyncAccessHandle::closeFile) 2. notify backend about close (FileSystemSyncAccessHandle::closeBackend) 3. get close result and complete callbacks (FileSystemSyncAccessHandle::didCloseBackend) For invalidation case, we only need to perform step 1 and 3 because connection to backend is lost or backend initiates the close. API test: FileSystemAccess.NetworkProcessCrashDuringWrite * Headers.cmake: * Modules/cache/WindowOrWorkerGlobalScopeCaches.cpp: * Modules/filesystemaccess/FileSystemFileHandle.cpp: (WebCore::FileSystemFileHandle::registerSyncAccessHandle): (WebCore::FileSystemFileHandle::unregisterSyncAccessHandle): * Modules/filesystemaccess/FileSystemFileHandle.h: * Modules/filesystemaccess/FileSystemStorageConnection.h: (WebCore::FileSystemStorageConnection::isWorker const): * Modules/filesystemaccess/FileSystemSyncAccessHandle.cpp: (WebCore::FileSystemSyncAccessHandle::FileSystemSyncAccessHandle): (WebCore::FileSystemSyncAccessHandle::~FileSystemSyncAccessHandle): (WebCore::FileSystemSyncAccessHandle::closeInternal): (WebCore::FileSystemSyncAccessHandle::closeFile): (WebCore::FileSystemSyncAccessHandle::didCloseFile): (WebCore::FileSystemSyncAccessHandle::closeBackend): (WebCore::FileSystemSyncAccessHandle::didCloseBackend): (WebCore::FileSystemSyncAccessHandle::invalidate): (WebCore::FileSystemSyncAccessHandle::didClose): Deleted. * Modules/filesystemaccess/FileSystemSyncAccessHandle.h: * Modules/filesystemaccess/WorkerFileSystemStorageConnection.cpp: (WebCore::WorkerFileSystemStorageConnection::connectionClosed): (WebCore::WorkerFileSystemStorageConnection::registerSyncAccessHandle): (WebCore::WorkerFileSystemStorageConnection::unregisterSyncAccessHandle): (WebCore::WorkerFileSystemStorageConnection::invalidateAccessHandle): * Modules/filesystemaccess/WorkerFileSystemStorageConnection.h: (isType): * Modules/mediastream/RTCRtpScriptTransformer.cpp: * WebCore.xcodeproj/project.pbxproj: * dom/BroadcastChannel.cpp: * workers/WorkerGlobalScope.cpp: * workers/WorkerGlobalScope.h: * workers/WorkerOrWorkletScriptController.cpp: Source/WebKit: * WebProcess/WebCoreSupport/WebFileSystemStorageConnection.cpp: (WebKit::WebFileSystemStorageConnection::connectionClosed): (WebKit::WebFileSystemStorageConnection::registerSyncAccessHandle): (WebKit::WebFileSystemStorageConnection::unregisterSyncAccessHandle): (WebKit::WebFileSystemStorageConnection::invalidateAccessHandle): * WebProcess/WebCoreSupport/WebFileSystemStorageConnection.h: Tools: * TestWebKitAPI/Tests/WebKitCocoa/FileSystemAccess.mm: (test): (keepAccessHandleActive): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Headers.cmake trunk/Source/WebCore/Modules/cache/WindowOrWorkerGlobalScopeCaches.cpp trunk/Source/WebCore/Modules/filesystemaccess/FileSystemFileHandle.cpp trunk/Source/WebCore/Modules/filesystemaccess/FileSystemFileHandle.h trunk/Source/WebCore/Modules/filesystemaccess/FileSystemStorageConnection.h trunk/Source/WebCore/Modules/filesystemaccess/FileSystemSyncAccessHandle.cpp trunk/Source/WebCore/Modules/filesystemaccess/FileSystemSyncAccessHandle.h trunk/Source/WebCore/Modules/filesystemaccess/WorkerFileSystemStorageConnection.cpp trunk/Source/WebCore/Modules/filesystemaccess/WorkerFileSystemStorageConnection.h trunk/Source/WebCore/Modules/mediastream/RTCRtpScriptTransformer.cpp trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/dom/BroadcastChannel.cpp trunk/Source/WebCore/workers/WorkerGlobalScope.cpp trunk/Source/WebCore/workers/WorkerGlobalScope.h trunk/Source/WebCore/workers/WorkerOrWorkletScriptController.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFileSystemStorageConnection.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFileSystemStorageConnection.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/FileSystemAccess.mm Diff Modified: trunk/Source/WebCore/ChangeLog (286413 => 286414) --- trunk/Source/WebCore/ChangeLog 2021-12-02 06:05:10 UTC (rev 286413) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 06:27:47 UTC (rev 286414) @@ -1,3 +1,57 @@ +2021-12-01 Sihui Liu + +FileSystemSyncAccessHandle should be invalidated when network process crashes +https://bugs.webkit.org/show_bug.cgi?id=232605 + + +
[webkit-changes] [286413] trunk
Title: [286413] trunk Revision 286413 Author cdu...@apple.com Date 2021-12-01 22:05:10 -0800 (Wed, 01 Dec 2021) Log Message validity.valueMissing should not rely on element's disabled state for inputs of type radio/file/checkbox https://bugs.webkit.org/show_bug.cgi?id=233735 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-valueMissing-expected.txt: * web-platform-tests/html/semantics/forms/constraints/radio-valueMissing-expected.txt: Source/WebCore: validity.valueMissing should not rely on element's disabled state for inputs of type radio/file/checkbox: - https://html.spec.whatwg.org/multipage/input.html#radio-button-state-(type=radio):suffering-from-being-missing - https://html.spec.whatwg.org/multipage/input.html#file-upload-state-(type=file):suffering-from-being-missing - https://html.spec.whatwg.org/multipage/input.html#checkbox-state-(type=checkbox):suffering-from-being-missing This was causing us to fail a few WPT tests that are passing in both Blink and Gecko. * html/BaseDateAndTimeInputType.cpp: (WebCore::BaseDateAndTimeInputType::valueMissing const): * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::valueMissing const): * html/TextFieldInputType.cpp: (WebCore::TextFieldInputType::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-valueMissing-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/radio-valueMissing-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-valueMissing-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/BaseDateAndTimeInputType.cpp trunk/Source/WebCore/html/HTMLInputElement.cpp trunk/Source/WebCore/html/TextFieldInputType.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286412 => 286413) --- trunk/LayoutTests/ChangeLog 2021-12-02 05:03:13 UTC (rev 286412) +++ trunk/LayoutTests/ChangeLog 2021-12-02 06:05:10 UTC (rev 286413) @@ -1,3 +1,14 @@ +2021-12-01 Chris Dumez + +validity.valueMissing should not rely on element's disabled state for inputs of type radio/file/checkbox +https://bugs.webkit.org/show_bug.cgi?id=233735 + +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-valueMissing-expected.txt: + 2021-12-01 Arcady Goldmints-Orlov [GLIB] Update test expectations and baselines. Unreviewed test gardening. Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286412 => 286413) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-02 05:03:13 UTC (rev 286412) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-02 06:05:10 UTC (rev 286413) @@ -1,3 +1,15 @@ +2021-12-01 Chris Dumez + +validity.valueMissing should not rely on element's disabled state for inputs of type radio/file/checkbox +https://bugs.webkit.org/show_bug.cgi?id=233735 + +Reviewed by Darin Adler. + +Rebaseline WPT tests now that more checks are passing. + +* web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: +* web-platform-tests/html/semantics/forms/constraints/radio-valueMissing-expected.txt: + 2021-12-01 Antti Koivisto [:has() pseudo-class] Sibling combinator invalidation Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt (286412 => 286413) --- trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt 2021-12-02 05:03:13 UTC (rev 286412) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt 2021-12-02 06:05:10 UTC (rev 286413) @@ -35,13 +35,13 @@ PASS [INPUT in NUMBER status] The value attribute is empty string PASS [INPUT in CHECKBOX status] The required attribute is not set PASS [INPUT in CHECKBOX status] The checked attribute is true -FAIL [INPUT in CHECKBOX status] The checked attribute is false assert_true: The validity.valueMissing should be true, when control is disabled. expected true got false +PASS [INPUT in CHE
[webkit-changes] [286412] trunk/Source/WebInspectorUI
Title: [286412] trunk/Source/WebInspectorUI Revision 286412 Author pan...@apple.com Date 2021-12-01 21:03:13 -0800 (Wed, 01 Dec 2021) Log Message Web Inspector: Console execution context can become an unexpected selection on refresh/navigation https://bugs.webkit.org/show_bug.cgi?id=233349 Reviewed by Devin Rousso. There are really three bugs here in `WI.QuickConsole.prototype._handleFrameExecutionContextsCleared`, each of which contribute to unexpected execution context selections. 1. If the frame of the active execution context commits a provisional load, our code attempts to re-select the new context for that frame, which results in clearing the `Auto` bit for selected context, which means the context no longer will follow the selected DOM node. This is resolved by no longer following a frame's execution context on navigation if the current selection is `Auto` (tracked by the `_useExecutionContextOfInspectedNode` variable). 2. Because of the very short timeframe for the above to take place before bailing (previously 10ms) there are many situations where other large payloads over the protocol, like a complex DOM tree, will cause the timeout to fire before we receive an event telling us there is a new execution context for the frame, which means we end up not following the frame anyways. This is improved by increasing the timeout to a still-brisk, but more reasonable 100ms. 3. The timeout in (2) can lead to us having a selected execution context that may no longer be valid because the fail-safe in `QuickConsole.prototype._handleFrameExecutionContextsCleared` doesn't really fail safely, since it doesn't provide a new execution context to be active and instead seems to rely on the hope that the context will still work for future invocations, which I believe is how many users are getting into the state of a blank execution context picker (with a working drop down menu with actual contexts that are selectable) and are unable to evaluate anything in the console until re-selecting an execution context. Additional drive-by change to move the checks for whether or not we can use the execution context of a selected node into its own method. * UserInterface/Views/QuickConsole.js: (WI.QuickConsole.prototype._populateActiveExecutionContextNavigationItemContextMenu): (WI.QuickConsole.prototype._handleEngineeringShowInternalExecutionContextsSettingChanged): (WI.QuickConsole.prototype._handleFrameExecutionContextsCleared): (WI.QuickConsole.prototype._handleTargetRemoved): (WI.QuickConsole.prototype._canUseExecutionContextOfInspectedNode): Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Views/QuickConsole.js Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (286411 => 286412) --- trunk/Source/WebInspectorUI/ChangeLog 2021-12-02 04:58:54 UTC (rev 286411) +++ trunk/Source/WebInspectorUI/ChangeLog 2021-12-02 05:03:13 UTC (rev 286412) @@ -1,3 +1,42 @@ +2021-12-01 Patrick Angle + +Web Inspector: Console execution context can become an unexpected selection on refresh/navigation +https://bugs.webkit.org/show_bug.cgi?id=233349 + +Reviewed by Devin Rousso. + +There are really three bugs here in `WI.QuickConsole.prototype._handleFrameExecutionContextsCleared`, each of +which contribute to unexpected execution context selections. + +1. If the frame of the active execution context commits a provisional load, our code attempts to re-select the +new context for that frame, which results in clearing the `Auto` bit for selected context, which means the +context no longer will follow the selected DOM node. This is resolved by no longer following a frame's execution +context on navigation if the current selection is `Auto` (tracked by the `_useExecutionContextOfInspectedNode` +variable). + +2. Because of the very short timeframe for the above to take place before bailing (previously 10ms) there are +many situations where other large payloads over the protocol, like a complex DOM tree, will cause the timeout to +fire before we receive an event telling us there is a new execution context for the frame, which means we end up +not following the frame anyways. This is improved by increasing the timeout to a still-brisk, but more +reasonable 100ms. + +3. The timeout in (2) can lead to us having a selected execution context that may no longer be valid because the +fail-safe in `QuickConsole.prototype._handleFrameExecutionContextsCleared` doesn't really fail safely, since it +doesn't provide a new execution context to be active and instead seems to rely on the hope that the context will +still work for future invocations, which I believe is how many users are getting into the state of a blank +execution context picker (with a working drop down menu with actual contexts that are selectable) and are unable +
[webkit-changes] [286411] trunk/Source/WebCore
Title: [286411] trunk/Source/WebCore Revision 286411 Author simon.fra...@apple.com Date 2021-12-01 20:58:54 -0800 (Wed, 01 Dec 2021) Log Message Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events https://bugs.webkit.org/show_bug.cgi?id=233739 rdar://85946176 Reviewed by Tim Horton. While the scrolling thread is chilling in ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), waiting up to half a frame to allow the main thread to handle the commit (for scroll synchronization), wheel events may have been dispatched to the scrolling thread. If we blow the timeout and commit anyway, we need to make sure we've handled these wheel events first, so that the current frame can commit some layer movement. We can achieve this by dispatching the applyLayerPositions(), which will enqueue it behind any waiting wheel event dispatch from EventDispatcher::internalWheelEvent(). * page/scrolling/ScrollingTree.cpp: (WebCore::ScrollingTree::applyLayerPositions): * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286410 => 286411) --- trunk/Source/WebCore/ChangeLog 2021-12-02 04:58:49 UTC (rev 286410) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 04:58:54 UTC (rev 286411) @@ -1,5 +1,28 @@ 2021-12-01 Simon Fraser +Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events +https://bugs.webkit.org/show_bug.cgi?id=233739 +rdar://85946176 + +Reviewed by Tim Horton. + +While the scrolling thread is chilling in +ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), waiting up to half a +frame to allow the main thread to handle the commit (for scroll synchronization), wheel +events may have been dispatched to the scrolling thread. + +If we blow the timeout and commit anyway, we need to make sure we've handled these wheel +events first, so that the current frame can commit some layer movement. We can achieve this +by dispatching the applyLayerPositions(), which will enqueue it behind any waiting wheel +event dispatch from EventDispatcher::internalWheelEvent(). + +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::applyLayerPositions): +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): + +2021-12-01 Simon Fraser + Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization https://bugs.webkit.org/show_bug.cgi?id=233738 rdar://85880147 Modified: trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp (286410 => 286411) --- trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp 2021-12-02 04:58:49 UTC (rev 286410) +++ trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp 2021-12-02 04:58:54 UTC (rev 286411) @@ -437,7 +437,6 @@ void ScrollingTree::applyLayerPositions() { -ASSERT(isMainThread()); Locker locker { m_treeLock }; applyLayerPositionsInternal(); Modified: trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp (286410 => 286411) --- trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-02 04:58:49 UTC (rev 286410) +++ trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-02 04:58:54 UTC (rev 286411) @@ -417,8 +417,12 @@ m_state = SynchronizationState::Desynchronized; // At this point we know the main thread is taking too long in the rendering update, // so we give up trying to sync with the main thread and update layers here on the scrolling thread. -if (canUpdateLayersOnScrollingThread()) -applyLayerPositionsInternal(); +if (canUpdateLayersOnScrollingThread()) { +// Dispatch to allow for the scrolling thread to handle any outstanding wheel events before we commit layers. +ScrollingThread::dispatch([protectedThis = Ref { *this }]() { +protectedThis->applyLayerPositions(); +}); +} tracePoint(ScrollingThreadRenderUpdateSyncEnd, 1); } else tracePoint(ScrollingThreadRenderUpdateSyncEnd); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286410] trunk/Source/WebCore
Title: [286410] trunk/Source/WebCore Revision 286410 Author simon.fra...@apple.com Date 2021-12-01 20:58:49 -0800 (Wed, 01 Dec 2021) Log Message Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization https://bugs.webkit.org/show_bug.cgi?id=233738 rdar://85880147 Reviewed by Tim Horton. The scroll synchronization added in r261985 can cause dropped frames while scrolling. This occurs when ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), which is called at the start of a rendering update on the main thread, starts at a time when it will delay the handling of displayDidRefreshOnScrollingThread(). This can result in delaying the CA commit for that frame on the scrolling thread. The solution is to clamp the duration that waitForRenderingUpdateCompletionOrTimeout() waits on the condition, so that it doesn't exceed the next expected display refresh time. * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): (WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): * page/scrolling/ThreadedScrollingTree.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.h Diff Modified: trunk/Source/WebCore/ChangeLog (286409 => 286410) --- trunk/Source/WebCore/ChangeLog 2021-12-02 03:00:13 UTC (rev 286409) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 04:58:49 UTC (rev 286410) @@ -1,3 +1,25 @@ +2021-12-01 Simon Fraser + +Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization +https://bugs.webkit.org/show_bug.cgi?id=233738 +rdar://85880147 + +Reviewed by Tim Horton. + +The scroll synchronization added in r261985 can cause dropped frames while scrolling. This +occurs when ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), which is +called at the start of a rendering update on the main thread, starts at a time when it will +delay the handling of displayDidRefreshOnScrollingThread(). This can result in delaying the +CA commit for that frame on the scrolling thread. + +The solution is to clamp the duration that waitForRenderingUpdateCompletionOrTimeout() waits +on the condition, so that it doesn't exceed the next expected display refresh time. + +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): +(WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): +* page/scrolling/ThreadedScrollingTree.h: + 2021-12-01 Chris Fleizach AX: Support accessibility attributes for Modified: trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp (286409 => 286410) --- trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-02 03:00:13 UTC (rev 286409) +++ trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-02 04:58:49 UTC (rev 286410) @@ -402,8 +402,9 @@ if (m_delayedRenderingUpdateDetectionTimer) m_delayedRenderingUpdateDetectionTimer->stop(); -auto startTime = MonotonicTime::now(); -auto timeoutTime = startTime + maxAllowableRenderingUpdateDurationForSynchronization(); +auto currentTime = MonotonicTime::now(); +auto estimatedNextDisplayRefreshTime = std::max(m_lastDisplayDidRefreshTime + frameDuration(), currentTime); +auto timeoutTime = std::min(currentTime + maxAllowableRenderingUpdateDurationForSynchronization(), estimatedNextDisplayRefreshTime); bool becameIdle = m_stateCondition.waitUntil(m_treeLock, timeoutTime, [&] { assertIsHeld(m_treeLock); @@ -462,7 +463,9 @@ Locker locker { m_treeLock }; -serviceScrollAnimations(MonotonicTime::now()); +auto now = MonotonicTime::now(); +m_lastDisplayDidRefreshTime = now; +serviceScrollAnimations(now); if (m_state != SynchronizationState::Idle && canUpdateLayersOnScrollingThread()) applyLayerPositionsInternal(); Modified: trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.h (286409 => 286410) --- trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.h 2021-12-02 03:00:13 UTC (rev 286409) +++ trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.h 2021-12-02 04:58:49 UTC (rev 286410) @@ -123,6 +123,8 @@ bool m_receivedBeganEventFromMainThread WTF_GUARDED_BY_LOCK(m_treeLock) { false }; Condition m_waitingForBeganEventCondition; + +MonotonicTime m_lastDisplayDidRefreshTime; // Dynamically allocated because it has to use the ScrollingThread's runloop. std::unique_ptr> m_delayedRenderingUpdateDetectionTimer WTF_GUARDED_BY_LOCK(m_treeLock); ___ webkit-changes mailing list webkit-changes@lists.webkit.org ht
[webkit-changes] [286409] trunk/LayoutTests
Title: [286409] trunk/LayoutTests Revision 286409 Author commit-qu...@webkit.org Date 2021-12-01 19:00:13 -0800 (Wed, 01 Dec 2021) Log Message [GLIB] Update test expectations and baselines. Unreviewed test gardening. https://bugs.webkit.org/show_bug.cgi?id=233741 Patch by Arcady Goldmints-Orlov on 2021-12-01 * platform/glib/TestExpectations: * platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt: * platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt: * platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/glib/TestExpectations trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (286408 => 286409) --- trunk/LayoutTests/ChangeLog 2021-12-02 02:12:37 UTC (rev 286408) +++ trunk/LayoutTests/ChangeLog 2021-12-02 03:00:13 UTC (rev 286409) @@ -1,3 +1,13 @@ +2021-12-01 Arcady Goldmints-Orlov + +[GLIB] Update test expectations and baselines. Unreviewed test gardening. +https://bugs.webkit.org/show_bug.cgi?id=233741 + +* platform/glib/TestExpectations: +* platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt: +* platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt: +* platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt: + 2021-12-01 Chris Fleizach AX: Support accessibility attributes for Modified: trunk/LayoutTests/platform/glib/TestExpectations (286408 => 286409) --- trunk/LayoutTests/platform/glib/TestExpectations 2021-12-02 02:12:37 UTC (rev 286408) +++ trunk/LayoutTests/platform/glib/TestExpectations 2021-12-02 03:00:13 UTC (rev 286409) @@ -754,6 +754,7 @@ webkit.org/b/230028 media/media-source/media-source-seek-twice.html [ Pass Timeout ] +webkit.org/b/231811 fast/mediastream/MediaStream-video-element-enter-background.html [ Failure ] webkit.org/b/231811 media/audio-background-playback-playlist.html [ Failure ] webkit.org/b/231811 media/media-session/actionHandlerInternalMappings.html [ Failure ] webkit.org/b/231811 media/media-session/default-actionHandlers.html [ Failure ] @@ -782,6 +783,8 @@ imported/w3c/web-platform-tests/video-rvfc/request-video-frame-callback-before-xr-session.https.html [ Skip ] imported/w3c/web-platform-tests/video-rvfc/request-video-frame-callback-during-xr-session.https.html [ Skip ] +webkit.org/b/233731 fast/mediastream/getDisplayMedia-size.html [ Failure ] + # # End of GStreamer-related bugs # @@ -1350,6 +1353,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 ] + # # End of WebRTC-related bugs # @@ -2580,6 +2585,7 @@ webkit.org/b/232386 fast/selectors/empty-namespace-with-element-selector.html [ Failure ] webkit.org/b/232386 fast/table/Rowspan-value-more-than-number-of-rows-present.html [ Failure ] webkit.org/b/232386 fast/text/crash-font-family-parsed.html [ Failure ] +webkit.org/b/232386 fast/text/large-synthetic-bold-with-scale-transform.html [ ImageOnlyFailure ] webkit.org/b/232386 fast/text/line-breaks-after-white-space.html [ Failure ] webkit.org/b/232386 fast/text/text-shadow-no-default-color.html [ Failure ] webkit.org/b/232386 fast/text/text-underline-first-line-decoration.html [ ImageOnlyFailure ] Modified: trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt (286408 => 286409) --- trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt 2021-12-02 02:12:37 UTC (rev 286408) +++ trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/html/semantics/form
[webkit-changes] [286408] trunk/Source/WebKit
Title: [286408] trunk/Source/WebKit Revision 286408 Author j...@apple.com Date 2021-12-01 18:12:37 -0800 (Wed, 01 Dec 2021) Log Message Avoid allocating and copy memory from a SharedMemory into a SharedBuffer https://bugs.webkit.org/show_bug.cgi?id=233401 rdar://85637721 Reviewed by Eric Carlson. We can directly wrap a SharedMemory into a SharedBuffer using SharedMemory::createSharedBuffer instead. No change in observable behaviour other than total memory size reduction. Fly-by fix: check for null when mapping a SharedMemory to an IPC handle in a couple of spots. * Shared/ShareableResource.h: Make ShareableResource use thread-safe refcount. A ShareableResource once created is immutable and the SharedMemory object itself has thread-safe refounting. Deleting the object outside the main thread is safe. Make members const. * Shared/ShareableResource.cpp: (WebKit::ShareableResource::wrapInSharedBuffer): Refactor method, using DataSegment::Provider instead of platfom specific code. * Shared/WebCoreArgumentCoders.cpp: (IPC::decodeSharedBuffer): * UIProcess/Cocoa/WebPasteboardProxyCocoa.mm: (WebKit::WebPasteboardProxy::setPasteboardBufferForType): * UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::saveImageToLibrary): * UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::dataSelectionForPasteboard): (WebKit::WebPageProxy::setPromisedDataForImage): * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: (WebKit::WebPlatformStrategies::bufferForType): Hardening code, checking for nullability. (WebKit::WebPlatformStrategies::readBufferFromPasteboard): Hardening code, checking for nullability. * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::restoreAppHighlightsAndScrollToIndex): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/ShareableResource.cpp trunk/Source/WebKit/Shared/ShareableResource.h trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp trunk/Source/WebKit/UIProcess/Cocoa/WebPasteboardProxyCocoa.mm trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm trunk/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm trunk/Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (286407 => 286408) --- trunk/Source/WebKit/ChangeLog 2021-12-02 02:10:30 UTC (rev 286407) +++ trunk/Source/WebKit/ChangeLog 2021-12-02 02:12:37 UTC (rev 286408) @@ -1,3 +1,43 @@ +2021-12-01 Jean-Yves Avenard + +Avoid allocating and copy memory from a SharedMemory into a SharedBuffer +https://bugs.webkit.org/show_bug.cgi?id=233401 +rdar://85637721 + +Reviewed by Eric Carlson. + +We can directly wrap a SharedMemory into a SharedBuffer using +SharedMemory::createSharedBuffer instead. +No change in observable behaviour other than total memory size reduction. + +Fly-by fix: check for null when mapping a SharedMemory to an IPC handle +in a couple of spots. + +* Shared/ShareableResource.h: Make ShareableResource use thread-safe refcount. +A ShareableResource once created is immutable and the SharedMemory object +itself has thread-safe refounting. Deleting the object outside the main thread +is safe. +Make members const. +* Shared/ShareableResource.cpp: +(WebKit::ShareableResource::wrapInSharedBuffer): Refactor method, using DataSegment::Provider +instead of platfom specific code. +* Shared/WebCoreArgumentCoders.cpp: +(IPC::decodeSharedBuffer): +* UIProcess/Cocoa/WebPasteboardProxyCocoa.mm: +(WebKit::WebPasteboardProxy::setPasteboardBufferForType): +* UIProcess/ios/WebPageProxyIOS.mm: +(WebKit::WebPageProxy::saveImageToLibrary): +* UIProcess/mac/WebPageProxyMac.mm: +(WebKit::WebPageProxy::dataSelectionForPasteboard): +(WebKit::WebPageProxy::setPromisedDataForImage): +* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: +(WebKit::WebPlatformStrategies::bufferForType): +Hardening code, checking for nullability. +(WebKit::WebPlatformStrategies::readBufferFromPasteboard): +Hardening code, checking for nullability. +* WebProcess/WebPage/WebPage.cpp: +(WebKit::WebPage::restoreAppHighlightsAndScrollToIndex): + 2021-12-01 Chris Fleizach AX: Support accessibility attributes for Modified: trunk/Source/WebKit/Shared/ShareableResource.cpp (286407 => 286408) --- trunk/Source/WebKit/Shared/ShareableResource.cpp 2021-12-02 02:10:30 UTC (rev 286407) +++ trunk/Source/WebKit/Shared/ShareableResource.cpp 2021-12-02 02:12:37 UTC (rev 286408) @@ -55,46 +55,12 @@ return true; } -#if USE(CF) -static void shareableResourceDeallocate(void *ptr, void *info) -{ -static_cast(info)->deref(); // Balanced by ref() in createShareableResourceDeallocator() -} - -static RetainPtr createShareableResourceDeallocator(ShareableResour
[webkit-changes] [286407] branches/safari-613.1.10-branch/Source/WebKit
Title: [286407] branches/safari-613.1.10-branch/Source/WebKit Revision 286407 Author repst...@apple.com Date 2021-12-01 18:10:30 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r286386. rdar://problem/75225923 Unreviewed, reverting r286037. https://bugs.webkit.org/show_bug.cgi?id=233724 Introduced WebRTC crash Reverted changeset: "[macOS][GPUP] Remove access in sandbox to com.apple.audio.AudioComponentRegistrar" https://bugs.webkit.org/show_bug.cgi?id=231694 https://commits.webkit.org/r286037 git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286386 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-613.1.10-branch/Source/WebKit/ChangeLog branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/GPUProcess.h branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/GPUProcess.messages.in branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in branches/safari-613.1.10-branch/Source/WebKit/UIProcess/Cocoa/WebProcessProxyCocoa.mm branches/safari-613.1.10-branch/Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp branches/safari-613.1.10-branch/Source/WebKit/UIProcess/WebProcessPool.cpp branches/safari-613.1.10-branch/Source/WebKit/UIProcess/WebProcessProxy.h branches/safari-613.1.10-branch/Source/WebKit/WebAuthnProcess/mac/com.apple.WebKit.WebAuthnProcess.sb.in branches/safari-613.1.10-branch/Source/WebKit/WebKit.xcodeproj/project.pbxproj Removed Paths branches/safari-613.1.10-branch/Source/WebKit/Shared/Cocoa/AudioComponentRegistration.cpp branches/safari-613.1.10-branch/Source/WebKit/Shared/Cocoa/AudioComponentRegistration.h Diff Modified: branches/safari-613.1.10-branch/Source/WebKit/ChangeLog (286406 => 286407) --- branches/safari-613.1.10-branch/Source/WebKit/ChangeLog 2021-12-02 01:11:41 UTC (rev 286406) +++ branches/safari-613.1.10-branch/Source/WebKit/ChangeLog 2021-12-02 02:10:30 UTC (rev 286407) @@ -1,3 +1,35 @@ +2021-12-01 Russell Epstein + +Cherry-pick r286386. rdar://problem/75225923 + +Unreviewed, reverting r286037. +https://bugs.webkit.org/show_bug.cgi?id=233724 + +Introduced WebRTC crash + +Reverted changeset: + +"[macOS][GPUP] Remove access in sandbox to +com.apple.audio.AudioComponentRegistrar" +https://bugs.webkit.org/show_bug.cgi?id=231694 +https://commits.webkit.org/r286037 + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286386 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Commit Queue + +Unreviewed, reverting r286037. +https://bugs.webkit.org/show_bug.cgi?id=233724 + +Introduced WebRTC crash + +Reverted changeset: + +"[macOS][GPUP] Remove access in sandbox to +com.apple.audio.AudioComponentRegistrar" +https://bugs.webkit.org/show_bug.cgi?id=231694 +https://commits.webkit.org/r286037 + 2021-11-29 Kimmo Kinnunen GPUP GraphicsContextGL creation failure cannot be detected Modified: branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/GPUProcess.h (286406 => 286407) --- branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/GPUProcess.h 2021-12-02 01:11:41 UTC (rev 286406) +++ branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/GPUProcess.h 2021-12-02 02:10:30 UTC (rev 286407) @@ -28,7 +28,6 @@ #if ENABLE(GPU_PROCESS) #include "AuxiliaryProcess.h" -#include "DataReference.h" #include "SandboxExtension.h" #include "WebPageProxyIdentifier.h" #include @@ -110,10 +109,6 @@ const String& applicationVisibleName() const { return m_applicationVisibleName; } -#if PLATFORM(COCOA) -void consumeAudioComponentRegistrations(const IPC::DataReference&); -#endif - void webProcessConnectionCountForTesting(CompletionHandler&&); private: Modified: branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/GPUProcess.messages.in (286406 => 286407) --- branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/GPUProcess.messages.in 2021-12-02 01:11:41 UTC (rev 286406) +++ branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/GPUProcess.messages.in 2021-12-02 02:10:30 UTC (rev 286407) @@ -76,10 +76,6 @@ NotifyPreferencesChanged(String domain, String key, std::optional encodedValue) #endif -#if PLATFORM(COCOA) -ConsumeAudioComponentRegistrations(IPC::SharedBufferDataReference registrationData) -#endif - WebProcessConnectionCountForTesting() -> (uint64_t count) Async } Modified: branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm (286406 => 286407) --- branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm 2021-12-02 01:11:41 UTC (rev 286406) +++ branches/safari-613.1.10-branch/Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm 2021-12-02 02:10:30 UTC (rev 286407) @@ -30,7 +30,6 @@ #if ENABLE(GPU
[webkit-changes] [286405] trunk/Tools
Title: [286405] trunk/Tools Revision 286405 Author clo...@igalia.com Date 2021-12-01 16:42:40 -0800 (Wed, 01 Dec 2021) Log Message [EWS][GTK][WPE] Add a new Class for running layout tests on the EWS for the GTK and WPE ports. https://bugs.webkit.org/show_bug.cgi?id=231999 Reviewed by Jonathan Bedard. This patch adds a new class to the EWS for running layout tests for the GTK and WPE ports. It will be used initially for the GTK port and later for the WPE one. Mac/iOS ports will continue to use the current default EWS, so no behaviour change for them. This new class is specially designed to: A. Work with a tree that is not always green (or even that is often quite red). B. To not report any false positive to the patch author. C. To allow patch authors to use this EWS to get new expectations for patches that need lot of new re-baselines (like a WPT import) The very simplified logic of how this works is the following: 1. Run layout tests with patch (abort early at 500 unexpected failures) 2. Run layout tests with patch 10 times for each test that failed consistently (non-flaky) on step 1. 3. Run layout tests without patch 10 times for each test that failed consistently (non-flaky) on step 2. Then report to the patch author only the new consistent failures (tests that failed always with the patch and passed always without the patch, retrying 10 times) Any flaky test found is only reported to the bot watchers. For an explainer about why this is needed, and more details about the flow diagram and several design considerations, please check: https://people.igalia.com/clopez/wkbug/231999/explainer.html The patch also add 3 new workers to the queue (to a total of 8) to speed up testing. * CISupport/ews-build/config.json: * CISupport/ews-build/factories.py: (GTKTestsFactory): * CISupport/ews-build/layout_test_failures.py: (LayoutTestFailures.__init__): (LayoutTestFailures.results_from_string): (LayoutTestFailures.results_from_string.get_failing_tests): * CISupport/ews-build/steps.py: (BufferLogHeaderObserver): (BufferLogHeaderObserver.__init__): (BufferLogHeaderObserver.headerReceived): (BufferLogHeaderObserver.getHeaders): (BugzillaMixin.send_email_for_infrastructure_issue): (Trigger.propertiesToPassToTriggers): (RunWebKitTests.setLayoutTestCommand): (RunWebKitTests.start): (RunWebKitTests.commandComplete): (ReRunWebKitTests.evaluateCommand): (ReRunWebKitTests.commandComplete): (RunWebKitTestsWithoutPatch.commandComplete): (AnalyzeLayoutTestsResults.report_failure): (AnalyzeLayoutTestsResults.send_email_for_flaky_failure): (AnalyzeLayoutTestsResults.send_email_for_new_test_failures): (AnalyzeLayoutTestsResults.start): (RunWebKit1Tests.start): (RunWebKitTestsRedTree): (RunWebKitTestsRedTree._did_command_timed_out): (RunWebKitTestsRedTree.evaluateCommand): (RunWebKitTestsRepeatFailuresRedTree): (RunWebKitTestsRepeatFailuresRedTree.__init__): (RunWebKitTestsRepeatFailuresRedTree.setLayoutTestCommand): (RunWebKitTestsRepeatFailuresRedTree.evaluateCommand): (RunWebKitTestsRepeatFailuresRedTree.commandComplete): (RunWebKitTestsRepeatFailuresRedTree.start): (RunWebKitTestsRepeatFailuresWithoutPatchRedTree): (RunWebKitTestsRepeatFailuresWithoutPatchRedTree.__init__): (RunWebKitTestsRepeatFailuresWithoutPatchRedTree.setLayoutTestCommand): (RunWebKitTestsRepeatFailuresWithoutPatchRedTree.evaluateCommand): (RunWebKitTestsRepeatFailuresWithoutPatchRedTree.commandComplete): (RunWebKitTestsRepeatFailuresWithoutPatchRedTree.start): (RunWebKitTestsWithoutPatchRedTree): (RunWebKitTestsWithoutPatchRedTree.evaluateCommand): (AnalyzeLayoutTestsResultsRedTree): (AnalyzeLayoutTestsResultsRedTree.report_success): (AnalyzeLayoutTestsResultsRedTree.report_warning): (AnalyzeLayoutTestsResultsRedTree.report_infrastructure_issue_and_maybe_retry_build): (AnalyzeLayoutTestsResultsRedTree.send_email_for_pre_existent_failures): (AnalyzeLayoutTestsResultsRedTree.start): * CISupport/ews-build/steps_unittest.py: Modified Paths trunk/Tools/CISupport/ews-build/config.json trunk/Tools/CISupport/ews-build/factories.py trunk/Tools/CISupport/ews-build/layout_test_failures.py trunk/Tools/CISupport/ews-build/steps.py trunk/Tools/CISupport/ews-build/steps_unittest.py trunk/Tools/ChangeLog Diff Modified: trunk/Tools/CISupport/ews-build/config.json (286404 => 286405) --- trunk/Tools/CISupport/ews-build/config.json 2021-12-02 00:31:47 UTC (rev 286404) +++ trunk/Tools/CISupport/ews-build/config.json 2021-12-02 00:42:40 UTC (rev 286405) @@ -16,6 +16,9 @@ { "name": "igalia7-gtk-wk2-ews", "platform": "gtk" }, { "name": "igalia8-gtk-wk2-ews", "platform": "gtk" }, { "name": "igalia9-gtk-wk2-ews", "platform": "gtk" }, +{ "name": "igalia10-gtk-wk2-ews", "platform": "gtk" }, +{ "name": "igalia11-gtk-wk2-ews", "platform": "gtk" }, +{ "name": "igalia12-gtk-wk2-ews", "platform": "gtk" }, { "name": "aperez-gtk-ews", "platform": "gtk" }, { "name": "igalia-wpe-ews", "platform": "wpe" }, { "name": "aperez-wpe-e
[webkit-changes] [286404] trunk/Source/WebCore
Title: [286404] trunk/Source/WebCore Revision 286404 Author mmaxfi...@apple.com Date 2021-12-01 16:31:47 -0800 (Wed, 01 Dec 2021) Log Message [WebGPU] Add missing files to CMake https://bugs.webkit.org/show_bug.cgi?id=233687 Reviewed by Sam Weinig. I forgot to list some files. Source/WebCore: No new tests because there is no behavior change. * Headers.cmake: Source/WebCore/PAL: * pal/CMakeLists.txt: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Headers.cmake trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/pal/CMakeLists.txt Diff Modified: trunk/Source/WebCore/ChangeLog (286403 => 286404) --- trunk/Source/WebCore/ChangeLog 2021-12-02 00:30:58 UTC (rev 286403) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 00:31:47 UTC (rev 286404) @@ -1,5 +1,18 @@ 2021-12-01 Myles C. Maxfield +[WebGPU] Add missing files to CMake +https://bugs.webkit.org/show_bug.cgi?id=233687 + +Reviewed by Sam Weinig. + +I forgot to list some files. + +No new tests because there is no behavior change. + +* Headers.cmake: + +2021-12-01 Myles C. Maxfield + [WebGPU] Add default values to structs in WebCore/Modules/WebGPU https://bugs.webkit.org/show_bug.cgi?id=233691 Modified: trunk/Source/WebCore/Headers.cmake (286403 => 286404) --- trunk/Source/WebCore/Headers.cmake 2021-12-02 00:30:58 UTC (rev 286403) +++ trunk/Source/WebCore/Headers.cmake 2021-12-02 00:31:47 UTC (rev 286404) @@ -1,4 +1,134 @@ set(WebCore_PRIVATE_FRAMEWORK_HEADERS +Modules/WebGPU/GPU.h +Modules/WebGPU/GPUAdapter.h +Modules/WebGPU/GPUAddressMode.h +Modules/WebGPU/GPUBindGroup.h +Modules/WebGPU/GPUBindGroupDescriptor.h +Modules/WebGPU/GPUBindGroupEntry.h +Modules/WebGPU/GPUBindGroupLayout.h +Modules/WebGPU/GPUBindGroupLayoutDescriptor.h +Modules/WebGPU/GPUBindGroupLayoutEntry.h +Modules/WebGPU/GPUBlendComponent.h +Modules/WebGPU/GPUBlendFactor.h +Modules/WebGPU/GPUBlendOperation.h +Modules/WebGPU/GPUBlendState.h +Modules/WebGPU/GPUBuffer.h +Modules/WebGPU/GPUBufferBinding.h +Modules/WebGPU/GPUBufferBindingLayout.h +Modules/WebGPU/GPUBufferBindingType.h +Modules/WebGPU/GPUBufferDescriptor.h +Modules/WebGPU/GPUBufferUsage.h +Modules/WebGPU/GPUCanvasCompositingAlphaMode.h +Modules/WebGPU/GPUCanvasConfiguration.h +Modules/WebGPU/GPUCanvasContext.h +Modules/WebGPU/GPUColorDict.h +Modules/WebGPU/GPUColorTargetState.h +Modules/WebGPU/GPUColorWrite.h +Modules/WebGPU/GPUCommandBuffer.h +Modules/WebGPU/GPUCommandBufferDescriptor.h +Modules/WebGPU/GPUCommandEncoder.h +Modules/WebGPU/GPUCommandEncoderDescriptor.h +Modules/WebGPU/GPUCompareFunction.h +Modules/WebGPU/GPUCompilationInfo.h +Modules/WebGPU/GPUCompilationMessage.h +Modules/WebGPU/GPUCompilationMessageType.h +Modules/WebGPU/GPUComputePassDescriptor.h +Modules/WebGPU/GPUComputePassEncoder.h +Modules/WebGPU/GPUComputePassTimestampLocation.h +Modules/WebGPU/GPUComputePassTimestampWrite.h +Modules/WebGPU/GPUComputePipeline.h +Modules/WebGPU/GPUComputePipelineDescriptor.h +Modules/WebGPU/GPUCullMode.h +Modules/WebGPU/GPUDepthStencilState.h +Modules/WebGPU/GPUDevice.h +Modules/WebGPU/GPUDeviceDescriptor.h +Modules/WebGPU/GPUDeviceLostInfo.h +Modules/WebGPU/GPUDeviceLostReason.h +Modules/WebGPU/GPUError.h +Modules/WebGPU/GPUErrorFilter.h +Modules/WebGPU/GPUExtent3DDict.h +Modules/WebGPU/GPUExternalTexture.h +Modules/WebGPU/GPUExternalTextureBindingLayout.h +Modules/WebGPU/GPUExternalTextureDescriptor.h +Modules/WebGPU/GPUFeatureName.h +Modules/WebGPU/GPUFilterMode.h +Modules/WebGPU/GPUFragmentState.h +Modules/WebGPU/GPUFrontFace.h +Modules/WebGPU/GPUImageCopyBuffer.h +Modules/WebGPU/GPUImageCopyExternalImage.h +Modules/WebGPU/GPUImageCopyTexture.h +Modules/WebGPU/GPUImageCopyTextureTagged.h +Modules/WebGPU/GPUImageDataLayout.h +Modules/WebGPU/GPUIndexFormat.h +Modules/WebGPU/GPUIntegralTypes.h +Modules/WebGPU/GPULoadOp.h +Modules/WebGPU/GPUMapMode.h +Modules/WebGPU/GPUMultisampleState.h +Modules/WebGPU/GPUObjectDescriptorBase.h +Modules/WebGPU/GPUOrigin2DDict.h +Modules/WebGPU/GPUOrigin3DDict.h +Modules/WebGPU/GPUOutOfMemoryError.h +Modules/WebGPU/GPUPipelineDescriptorBase.h +Modules/WebGPU/GPUPipelineLayout.h +Modules/WebGPU/GPUPipelineLayoutDescriptor.h +Modules/WebGPU/GPUPipelineStatisticName.h +Modules/WebGPU/GPUPowerPreference.h +Modules/WebGPU/GPUPredefinedColorSpace.h +Modules/WebGPU/GPUPrimitiveState.h +Modules/WebGPU/GPUPrimitiveTopology.h +Modules/WebGPU/GPUProgrammableStage.h +Modules/WebGPU/GPUQuerySet.h +Modules/WebGPU/GPUQuerySetDescriptor.h +Modules/WebGPU/GPUQueryType.h +Modules/WebGPU/GPUQueue.h +Modules/WebGPU/GPURenderBundle.h +Modules/WebGPU/GPURend
[webkit-changes] [286403] trunk/Source/WebCore
Title: [286403] trunk/Source/WebCore Revision 286403 Author mmaxfi...@apple.com Date 2021-12-01 16:30:58 -0800 (Wed, 01 Dec 2021) Log Message [WebGPU] Add default values to structs in WebCore/Modules/WebGPU https://bugs.webkit.org/show_bug.cgi?id=233691 Reviewed by Alex Christensen. Our bindings code expects that the structs backing dictionaries have default values for their members. No new tests because there is no behavior change. * Modules/WebGPU/GPUBindGroupDescriptor.h: * Modules/WebGPU/GPUBindGroupEntry.h: * Modules/WebGPU/GPUBindGroupLayoutEntry.h: * Modules/WebGPU/GPUBlendComponent.h: * Modules/WebGPU/GPUBufferBinding.h: * Modules/WebGPU/GPUBufferBindingLayout.h: * Modules/WebGPU/GPUBufferDescriptor.h: * Modules/WebGPU/GPUCanvasConfiguration.h: * Modules/WebGPU/GPUColorDict.h: * Modules/WebGPU/GPUColorTargetState.h: * Modules/WebGPU/GPUComputePassTimestampWrite.h: * Modules/WebGPU/GPUDepthStencilState.h: * Modules/WebGPU/GPUExtent3DDict.h: * Modules/WebGPU/GPUExternalTextureDescriptor.h: * Modules/WebGPU/GPUImageCopyBuffer.h: * Modules/WebGPU/GPUImageCopyTexture.h: * Modules/WebGPU/GPUImageCopyTextureTagged.h: * Modules/WebGPU/GPUImageDataLayout.h: * Modules/WebGPU/GPUMultisampleState.h: * Modules/WebGPU/GPUOrigin2DDict.h: * Modules/WebGPU/GPUOrigin3DDict.h: * Modules/WebGPU/GPUPipelineDescriptorBase.h: * Modules/WebGPU/GPUPrimitiveState.h: * Modules/WebGPU/GPUProgrammableStage.h: * Modules/WebGPU/GPUQuerySetDescriptor.h: * Modules/WebGPU/GPURenderBundleEncoderDescriptor.h: * Modules/WebGPU/GPURenderPassColorAttachment.h: * Modules/WebGPU/GPURenderPassDepthStencilAttachment.h: * Modules/WebGPU/GPURenderPassDescriptor.h: * Modules/WebGPU/GPURenderPassLayout.h: * Modules/WebGPU/GPURenderPassTimestampWrite.h: * Modules/WebGPU/GPURequestAdapterOptions.h: * Modules/WebGPU/GPUSamplerBindingLayout.h: * Modules/WebGPU/GPUSamplerDescriptor.h: * Modules/WebGPU/GPUStencilFaceState.h: * Modules/WebGPU/GPUStorageTextureBindingLayout.h: * Modules/WebGPU/GPUTextureBindingLayout.h: * Modules/WebGPU/GPUTextureDescriptor.h: * Modules/WebGPU/GPUTextureViewDescriptor.h: * Modules/WebGPU/GPUVertexAttribute.h: * Modules/WebGPU/GPUVertexBufferLayout.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/WebGPU/GPUBindGroupDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPUBindGroupEntry.h trunk/Source/WebCore/Modules/WebGPU/GPUBindGroupLayoutEntry.h trunk/Source/WebCore/Modules/WebGPU/GPUBlendComponent.h trunk/Source/WebCore/Modules/WebGPU/GPUBufferBinding.h trunk/Source/WebCore/Modules/WebGPU/GPUBufferBindingLayout.h trunk/Source/WebCore/Modules/WebGPU/GPUBufferDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPUCanvasConfiguration.h trunk/Source/WebCore/Modules/WebGPU/GPUColorDict.h trunk/Source/WebCore/Modules/WebGPU/GPUColorTargetState.h trunk/Source/WebCore/Modules/WebGPU/GPUComputePassTimestampWrite.h trunk/Source/WebCore/Modules/WebGPU/GPUDepthStencilState.h trunk/Source/WebCore/Modules/WebGPU/GPUExtent3DDict.h trunk/Source/WebCore/Modules/WebGPU/GPUExternalTextureDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPUImageCopyBuffer.h trunk/Source/WebCore/Modules/WebGPU/GPUImageCopyTexture.h trunk/Source/WebCore/Modules/WebGPU/GPUImageCopyTextureTagged.h trunk/Source/WebCore/Modules/WebGPU/GPUImageDataLayout.h trunk/Source/WebCore/Modules/WebGPU/GPUMultisampleState.h trunk/Source/WebCore/Modules/WebGPU/GPUOrigin2DDict.h trunk/Source/WebCore/Modules/WebGPU/GPUOrigin3DDict.h trunk/Source/WebCore/Modules/WebGPU/GPUPipelineDescriptorBase.h trunk/Source/WebCore/Modules/WebGPU/GPUPrimitiveState.h trunk/Source/WebCore/Modules/WebGPU/GPUProgrammableStage.h trunk/Source/WebCore/Modules/WebGPU/GPUQuerySetDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPURenderBundleEncoderDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPURenderPassColorAttachment.h trunk/Source/WebCore/Modules/WebGPU/GPURenderPassDepthStencilAttachment.h trunk/Source/WebCore/Modules/WebGPU/GPURenderPassDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPURenderPassLayout.h trunk/Source/WebCore/Modules/WebGPU/GPURenderPassTimestampWrite.h trunk/Source/WebCore/Modules/WebGPU/GPURequestAdapterOptions.h trunk/Source/WebCore/Modules/WebGPU/GPUSamplerBindingLayout.h trunk/Source/WebCore/Modules/WebGPU/GPUSamplerDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPUStencilFaceState.h trunk/Source/WebCore/Modules/WebGPU/GPUStorageTextureBindingLayout.h trunk/Source/WebCore/Modules/WebGPU/GPUTextureBindingLayout.h trunk/Source/WebCore/Modules/WebGPU/GPUTextureDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPUTextureViewDescriptor.h trunk/Source/WebCore/Modules/WebGPU/GPUVertexAttribute.h trunk/Source/WebCore/Modules/WebGPU/GPUVertexBufferLayout.h Diff Modified: trunk/Source/WebCore/ChangeLog (286402 => 286403) --- trunk/Source/WebCore/ChangeLog 2021-12-02 00:29:17 UTC (rev 286402) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 00:30:58 UTC (rev 286403) @@ -1,3 +1,57 @@ +2021-12-01 Myles C. Maxfield + +[WebGPU]
[webkit-changes] [286402] trunk
Title: [286402] trunk Revision 286402 Author achristen...@apple.com Date 2021-12-01 16:29:17 -0800 (Wed, 01 Dec 2021) Log Message Use Span instead of pointer/length in CompiledContentExtension https://bugs.webkit.org/show_bug.cgi?id=233727 Reviewed by Tim Hatcher. Source/WebCore: No change in behavior. Just simplifying the interface a bit. * contentextensions/CompiledContentExtension.h: * contentextensions/ContentExtension.cpp: (WebCore::ContentExtensions::ContentExtension::ContentExtension): (WebCore::ContentExtensions::ContentExtension::findFirstIgnorePreviousRules const): (WebCore::ContentExtensions::ContentExtension::compileGlobalDisplayNoneStyleSheet): (WebCore::ContentExtensions::ContentExtension::populateConditionCacheIfNeeded): * contentextensions/ContentExtensionRule.cpp: (WebCore::ContentExtensions::DeserializedAction::deserialize): (WebCore::ContentExtensions::DeserializedAction::serializedLength): * contentextensions/ContentExtensionRule.h: * contentextensions/ContentExtensionsBackend.cpp: (WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad const): Source/WebKit: * Shared/WebCompiledContentRuleList.cpp: (WebKit::WebCompiledContentRuleList::filtersWithoutConditionsBytecode const): (WebKit::WebCompiledContentRuleList::filtersWithConditionsBytecode const): (WebKit::WebCompiledContentRuleList::topURLFiltersBytecode const): (WebKit::WebCompiledContentRuleList::serializedActions const): (WebKit::WebCompiledContentRuleList::spanWithOffsetAndLength const): (WebKit::WebCompiledContentRuleList::filtersWithoutConditionsBytecodeLength const): Deleted. (WebKit::WebCompiledContentRuleList::filtersWithConditionsBytecodeLength const): Deleted. (WebKit::WebCompiledContentRuleList::topURLFiltersBytecodeLength const): Deleted. (WebKit::WebCompiledContentRuleList::actions const): Deleted. (WebKit::WebCompiledContentRuleList::actionsLength const): Deleted. * Shared/WebCompiledContentRuleList.h: Tools: * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/contentextensions/CompiledContentExtension.h trunk/Source/WebCore/contentextensions/ContentExtension.cpp trunk/Source/WebCore/contentextensions/ContentExtensionRule.cpp trunk/Source/WebCore/contentextensions/ContentExtensionRule.h trunk/Source/WebCore/contentextensions/ContentExtensionsBackend.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebCompiledContentRuleList.cpp trunk/Source/WebKit/Shared/WebCompiledContentRuleList.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286401 => 286402) --- trunk/Source/WebCore/ChangeLog 2021-12-02 00:18:23 UTC (rev 286401) +++ trunk/Source/WebCore/ChangeLog 2021-12-02 00:29:17 UTC (rev 286402) @@ -1,3 +1,25 @@ +2021-12-01 Alex Christensen + +Use Span instead of pointer/length in CompiledContentExtension +https://bugs.webkit.org/show_bug.cgi?id=233727 + +Reviewed by Tim Hatcher. + +No change in behavior. Just simplifying the interface a bit. + +* contentextensions/CompiledContentExtension.h: +* contentextensions/ContentExtension.cpp: +(WebCore::ContentExtensions::ContentExtension::ContentExtension): +(WebCore::ContentExtensions::ContentExtension::findFirstIgnorePreviousRules const): +(WebCore::ContentExtensions::ContentExtension::compileGlobalDisplayNoneStyleSheet): +(WebCore::ContentExtensions::ContentExtension::populateConditionCacheIfNeeded): +* contentextensions/ContentExtensionRule.cpp: +(WebCore::ContentExtensions::DeserializedAction::deserialize): +(WebCore::ContentExtensions::DeserializedAction::serializedLength): +* contentextensions/ContentExtensionRule.h: +* contentextensions/ContentExtensionsBackend.cpp: +(WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad const): + 2021-12-01 Nikolas Zimmermann [LBSE] Rename RenderSVGRoot -> LegacyRenderSVGRoot Modified: trunk/Source/WebCore/contentextensions/CompiledContentExtension.h (286401 => 286402) --- trunk/Source/WebCore/contentextensions/CompiledContentExtension.h 2021-12-02 00:18:23 UTC (rev 286401) +++ trunk/Source/WebCore/contentextensions/CompiledContentExtension.h 2021-12-02 00:29:17 UTC (rev 286402) @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015 Apple Inc. All rights reserved. + * Copyright (C) 2015-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 @@ -29,27 +29,22 @@ #include "ContentExtensionRule.h" #include "DFABytecode.h" +#include #include -namespace WebCore { -namespace ContentExtensions { +namespace WebCore::ContentExtensions { class WEBCORE_EXPORT CompiledContentExtension : public ThreadSafeRefCounted { public: virtual ~CompiledCon
[webkit-changes] [286401] branches/safari-612-branch
Title: [286401] branches/safari-612-branch Revision 286401 Author repst...@apple.com Date 2021-12-01 16:18:23 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r285320. rdar://problem/85943167 Form action with a redirect should report correct blocked URI https://bugs.webkit.org/show_bug.cgi?id=232660 Reviewed by Brent Fulgham. Source/WebCore: We currently report the blocked URI as the target of a redirect, per the spec it should actually be the initiating url. Test: http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri.html * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::willSendRequest): * loader/FrameLoader.cpp: (WebCore::FrameLoader::checkIfFormActionAllowedByCSP const): * loader/FrameLoader.h: * page/csp/ContentSecurityPolicy.cpp: (WebCore::ContentSecurityPolicy::allowResourceFromSource const): (WebCore::ContentSecurityPolicy::allowFormAction const): * page/csp/ContentSecurityPolicy.h: LayoutTests: * http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri-expected.txt: Added. * http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri.html: Added. * http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked-expected.txt: Update console logging to report the correct URL. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285320 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/LayoutTests/ChangeLog branches/safari-612-branch/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked-expected.txt branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/loader/DocumentLoader.cpp branches/safari-612-branch/Source/WebCore/loader/FrameLoader.cpp branches/safari-612-branch/Source/WebCore/loader/FrameLoader.h branches/safari-612-branch/Source/WebCore/page/csp/ContentSecurityPolicy.cpp branches/safari-612-branch/Source/WebCore/page/csp/ContentSecurityPolicy.h Added Paths branches/safari-612-branch/LayoutTests/http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri-expected.txt branches/safari-612-branch/LayoutTests/http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri.html Diff Modified: branches/safari-612-branch/LayoutTests/ChangeLog (286400 => 286401) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 00:18:19 UTC (rev 286400) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 00:18:23 UTC (rev 286401) @@ -1,5 +1,54 @@ 2021-12-01 Alan Coon +Cherry-pick r285320. rdar://problem/85943167 + +Form action with a redirect should report correct blocked URI +https://bugs.webkit.org/show_bug.cgi?id=232660 + + +Reviewed by Brent Fulgham. + +Source/WebCore: + +We currently report the blocked URI as the target of a redirect, per +the spec it should actually be the initiating url. + +Test: http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri.html + +* loader/DocumentLoader.cpp: +(WebCore::DocumentLoader::willSendRequest): +* loader/FrameLoader.cpp: +(WebCore::FrameLoader::checkIfFormActionAllowedByCSP const): +* loader/FrameLoader.h: +* page/csp/ContentSecurityPolicy.cpp: +(WebCore::ContentSecurityPolicy::allowResourceFromSource const): +(WebCore::ContentSecurityPolicy::allowFormAction const): +* page/csp/ContentSecurityPolicy.h: + +LayoutTests: + +* http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri-expected.txt: Added. +* http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri.html: Added. +* http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked-expected.txt: +Update console logging to report the correct URL. + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285320 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-04 Kate Cheney + +Form action with a redirect should report correct blocked URI +https://bugs.webkit.org/show_bug.cgi?id=232660 + + +Reviewed by Brent Fulgham. + +* http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri-expected.txt: Added. +* http/tests/security/contentSecurityPolicy/form-action-redirect-with-correct-blocked-uri.html: Added. +* http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked-expected.txt: +Update console logging to report the correct URL. + +2021-12-01 Alan Coon + Cherry-pick r285570. rdar://problem/83070565 Fix crash in GraphicsContextCG::endTransparencyLayer Modified: branches/safari-612-branch/Layou
[webkit-changes] [286400] branches/safari-612-branch/Source/WebCore
Title: [286400] branches/safari-612-branch/Source/WebCore Revision 286400 Author repst...@apple.com Date 2021-12-01 16:18:19 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r286309. rdar://problem/84665699 Use scriptDisallowedScope in FrameSelection::updateAppearance https://bugs.webkit.org/show_bug.cgi?id=233644 Patch by Gabriel Nava Marino on 2021-11-30 Reviewed by Ryosuke Niwa. Use scriptDisallowedScope in FrameSelection::updateAppearance to avoid re-entrancy RenderView problems when a downstream function executes a JS callback. * editing/FrameSelection.cpp: (WebCore::FrameSelection::validateSelection const): (WebCore::FrameSelection::updateAppearance): * editing/FrameSelection.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286309 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/editing/FrameSelection.cpp Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286399 => 286400) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 00:18:16 UTC (rev 286399) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 00:18:19 UTC (rev 286400) @@ -1,5 +1,40 @@ 2021-12-01 Alan Coon +Cherry-pick r286309. rdar://problem/84665699 + +Use scriptDisallowedScope in FrameSelection::updateAppearance +https://bugs.webkit.org/show_bug.cgi?id=233644 + +Patch by Gabriel Nava Marino on 2021-11-30 +Reviewed by Ryosuke Niwa. + +Use scriptDisallowedScope in FrameSelection::updateAppearance to avoid re-entrancy +RenderView problems when a downstream function executes a JS callback. + +* editing/FrameSelection.cpp: +(WebCore::FrameSelection::validateSelection const): +(WebCore::FrameSelection::updateAppearance): +* editing/FrameSelection.h: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286309 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-30 Gabriel Nava Marino + +Use scriptDisallowedScope in FrameSelection::updateAppearance +https://bugs.webkit.org/show_bug.cgi?id=233644 + +Reviewed by Ryosuke Niwa. + +Use scriptDisallowedScope in FrameSelection::updateAppearance to avoid re-entrancy +RenderView problems when a downstream function executes a JS callback. + +* editing/FrameSelection.cpp: +(WebCore::FrameSelection::validateSelection const): +(WebCore::FrameSelection::updateAppearance): +* editing/FrameSelection.h: + +2021-12-01 Alan Coon + Cherry-pick r286308. rdar://problem/63180952 Scripting attributes are sometimes not properly stripped from elements when JS is disabled Modified: branches/safari-612-branch/Source/WebCore/editing/FrameSelection.cpp (286399 => 286400) --- branches/safari-612-branch/Source/WebCore/editing/FrameSelection.cpp 2021-12-02 00:18:16 UTC (rev 286399) +++ branches/safari-612-branch/Source/WebCore/editing/FrameSelection.cpp 2021-12-02 00:18:19 UTC (rev 286400) @@ -2172,10 +2172,6 @@ } #endif -RenderView* view = m_document->renderView(); -if (!view) -return; - // Construct a new VisibleSolution, since m_selection is not necessarily valid, and the following steps // assume a valid selection. See and . #if ENABLE(TEXT_CARET) @@ -2185,9 +2181,15 @@ VisibleSelection selection(oldSelection.visibleStart(), oldSelection.visibleEnd()); #endif -if (!selection.isRange()) { -view->selection().clear(); -return; +{ +ScriptDisallowedScope scriptDisallowedScope; +auto* view = m_document->renderView(); +if (!view) +return; +if (!selection.isRange()) { +view->selection().clear(); +return; +} } // Use the rightmost candidate for the start of the selection, and the leftmost candidate for the end of the selection. @@ -2205,7 +2207,7 @@ // We can get into a state where the selection endpoints map to the same VisiblePosition when a selection is deleted // because we don't yet notify the FrameSelection of text removal. -if (startPos.isNotNull() && endPos.isNotNull() && selection.visibleStart() != selection.visibleEnd()) { +if (auto* view = m_document->renderView(); startPos.isNotNull() && endPos.isNotNull() && selection.visibleStart() != selection.visibleEnd()) { RenderObject* startRenderer = startPos.deprecatedNode()->renderer(); int startOffset = startPos.deprecatedEditingOffset(); RenderObject* endRenderer = endPos.deprecatedNode()->renderer(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286396] branches/safari-612-branch
Title: [286396] branches/safari-612-branch Revision 286396 Author repst...@apple.com Date 2021-12-01 16:18:04 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r285619. rdar://problem/83941760 We should not kill all WebContent processes whenever the WebAuthn process crashes https://bugs.webkit.org/show_bug.cgi?id=232970 Reviewed by Geoff Garen. Source/WebKit: We should not kill all WebContent processes whenever the WebAuthn process crashes. This is overly aggressive. We should instead do like for the network process and have the WebProcess re-initiate the connection to the WebAuthn process when it's gone. No new tests, updated existing API test. * UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp: (WebKit::WebAuthnProcessProxy::webAuthnProcessCrashed): Do not terminate all WebProcesses when the WebAuthn process crashes. * WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp: (WebKit::WebAuthnProcessConnection::didClose): Make sure we call WebProcess::webAuthnProcessConnectionClosed() when the WebProcess loses its connection to the WebAuthn process. This makes sure we clear m_webAuthnProcessConnection and properly re-initiate a new WebAuthn process connection the next time WebProcess::ensureWebAuthnProcessConnection() is called. Tools: Update API test coverage to reflect behavior change. * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm: (TestWebKitAPI::TEST): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285619 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp branches/safari-612-branch/Source/WebKit/WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp branches/safari-612-branch/Tools/ChangeLog branches/safari-612-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286395 => 286396) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-02 00:18:00 UTC (rev 286395) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-02 00:18:04 UTC (rev 286396) @@ -1,5 +1,69 @@ 2021-12-01 Alan Coon +Cherry-pick r285619. rdar://problem/83941760 + +We should not kill all WebContent processes whenever the WebAuthn process crashes +https://bugs.webkit.org/show_bug.cgi?id=232970 + + +Reviewed by Geoff Garen. + +Source/WebKit: + +We should not kill all WebContent processes whenever the WebAuthn process crashes. This is overly aggressive. We should +instead do like for the network process and have the WebProcess re-initiate the connection to the WebAuthn process when +it's gone. + +No new tests, updated existing API test. + +* UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp: +(WebKit::WebAuthnProcessProxy::webAuthnProcessCrashed): +Do not terminate all WebProcesses when the WebAuthn process crashes. + +* WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp: +(WebKit::WebAuthnProcessConnection::didClose): +Make sure we call WebProcess::webAuthnProcessConnectionClosed() when the WebProcess +loses its connection to the WebAuthn process. This makes sure we clear m_webAuthnProcessConnection +and properly re-initiate a new WebAuthn process connection the next time WebProcess::ensureWebAuthnProcessConnection() +is called. + +Tools: + +Update API test coverage to reflect behavior change. + +* TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm: +(TestWebKitAPI::TEST): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285619 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-10 Chris Dumez + +We should not kill all WebContent processes whenever the WebAuthn process crashes +https://bugs.webkit.org/show_bug.cgi?id=232970 + + +Reviewed by Geoff Garen. + +We should not kill all WebContent processes whenever the WebAuthn process crashes. This is overly aggressive. We should +instead do like for the network process and have the WebProcess re-initiate the connection to the WebAuthn process when +it's gone. + +No new tests, updated existing API test. + +* UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp: +(WebKit::WebAuthnProcessProxy::webAuthnProcessCrashed): +Do not terminate all WebProcesses when the WebAuthn process crashes. + +* WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp: +(WebKit::WebAuthnProcessConnection::didClose): +Make sure we call WebProcess::webAuthnProcessConnectionClosed() when the WebProcess +loses its connection to the WebAuthn process. Th
[webkit-changes] [286398] branches/safari-612-branch/Source/WebKit
Title: [286398] branches/safari-612-branch/Source/WebKit Revision 286398 Author repst...@apple.com Date 2021-12-01 16:18:12 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r285865. rdar://problem/75139294 Do some hardening in IPC::createMessageDecoder() https://bugs.webkit.org/show_bug.cgi?id=233148 Reviewed by Darin Adler. Do more bound validation insde createMessageDecoder() to make sure we stay within the bounds of our ReceiveBuffer. Also, when the body is out of line, set `out_of_line.deallocate` to false since we are taking ownership of the memory and will vm_deallocate() it ourselves. Normally the sender (Connection::sendOutgoingMessage) sets that flag to false but it is better not to rely on the sender setting a particular flag. * Platform/IPC/cocoa/ConnectionCocoa.mm: (IPC::createMessageDecoder): (IPC::Connection::receiveSourceEventHandler): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285865 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Platform/IPC/cocoa/ConnectionCocoa.mm Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286397 => 286398) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-02 00:18:08 UTC (rev 286397) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-02 00:18:12 UTC (rev 286398) @@ -1,5 +1,50 @@ 2021-12-01 Alan Coon +Cherry-pick r285865. rdar://problem/75139294 + +Do some hardening in IPC::createMessageDecoder() +https://bugs.webkit.org/show_bug.cgi?id=233148 + + +Reviewed by Darin Adler. + +Do more bound validation insde createMessageDecoder() to make sure we stay within +the bounds of our ReceiveBuffer. + +Also, when the body is out of line, set `out_of_line.deallocate` to false since +we are taking ownership of the memory and will vm_deallocate() it ourselves. +Normally the sender (Connection::sendOutgoingMessage) sets that flag to false but +it is better not to rely on the sender setting a particular flag. + +* Platform/IPC/cocoa/ConnectionCocoa.mm: +(IPC::createMessageDecoder): +(IPC::Connection::receiveSourceEventHandler): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285865 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-16 Chris Dumez + +Do some hardening in IPC::createMessageDecoder() +https://bugs.webkit.org/show_bug.cgi?id=233148 + + +Reviewed by Darin Adler. + +Do more bound validation insde createMessageDecoder() to make sure we stay within +the bounds of our ReceiveBuffer. + +Also, when the body is out of line, set `out_of_line.deallocate` to false since +we are taking ownership of the memory and will vm_deallocate() it ourselves. +Normally the sender (Connection::sendOutgoingMessage) sets that flag to false but +it is better not to rely on the sender setting a particular flag. + +* Platform/IPC/cocoa/ConnectionCocoa.mm: +(IPC::createMessageDecoder): +(IPC::Connection::receiveSourceEventHandler): + +2021-12-01 Alan Coon + Cherry-pick r285720. rdar://problem/83941760 WebKit is unable to recover if a WebProcess gets terminated while it is launching Modified: branches/safari-612-branch/Source/WebKit/Platform/IPC/cocoa/ConnectionCocoa.mm (286397 => 286398) --- branches/safari-612-branch/Source/WebKit/Platform/IPC/cocoa/ConnectionCocoa.mm 2021-12-02 00:18:08 UTC (rev 286397) +++ branches/safari-612-branch/Source/WebKit/Platform/IPC/cocoa/ConnectionCocoa.mm 2021-12-02 00:18:12 UTC (rev 286398) @@ -411,8 +411,14 @@ sendOutgoingMessages(); } -static std::unique_ptr createMessageDecoder(mach_msg_header_t* header) +static std::unique_ptr createMessageDecoder(mach_msg_header_t* header, size_t bufferSize) { +if (UNLIKELY(header->msgh_size > bufferSize)) { +RELEASE_LOG_FAULT(IPC, "createMessageDecoder: msgh_size is greater than bufferSize (header->msgh_size: %lu, bufferSize: %lu)", static_cast(header->msgh_size), bufferSize); +ASSERT_NOT_REACHED(); +return nullptr; +} + if (!(header->msgh_bits & MACH_MSGH_BITS_COMPLEX)) { // We have a simple message. uint8_t* body = reinterpret_cast(header + 1); @@ -429,9 +435,16 @@ mach_msg_body_t* body = reinterpret_cast(header + 1); mach_msg_size_t numberOfPortDescriptors = body->msgh_descriptor_count; ASSERT(numberOfPortDescriptors); -if (!numberOfPortDescriptors) +if (UNLIKELY(!numberOfPortDescriptors)) return nullptr; +auto sizeWithPortDescriptors = CheckedSize { sizeof(mach_msg_header_t) + sizeof(mach_msg_body_t) } + CheckedSize { numberOfPortDescriptors } * sizeof(mach_msg_port_descriptor_t); +if (UNLIKELY(size
[webkit-changes] [286397] branches/safari-612-branch
Title: [286397] branches/safari-612-branch Revision 286397 Author repst...@apple.com Date 2021-12-01 16:18:08 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r285720. rdar://problem/83941760 WebKit is unable to recover if a WebProcess gets terminated while it is launching https://bugs.webkit.org/show_bug.cgi?id=233001 Reviewed by Brent Fulgham. Source/WebKit: While investigating , I found that the WebAuthn Process would get jetsammed, which would cause us to call WebProcessPool::terminateAllWebContentProcesses(). I also noticed that if one of these WebProcesses was still launching at the time of the termination, then the WebProcessProxy / WebPageProxy would keep thinking the WebProcess is still launching and would never attempt to relaunch it. This would result in a blank and unresponsive WKWebView which wouldn't be able to do any loads. The issue was due to ProcessLauncher::terminateProcess() calling invalidate(), which it would not only terminate the XPC connection, it would also null out m_client. As a result, we wouldn't notify the client that the process failed to launch. To address the issue, I move the XPC connection termination logic out of invalidate() and into its own terminateXPCConnection() function. I then called terminateXPCConnection() instead of invalidate() inside ProcessLauncher::terminateProcess(). * UIProcess/API/Cocoa/WKProcessPool.mm: (-[WKProcessPool _terminateAllWebContentProcesses]): * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: * UIProcess/Launcher/ProcessLauncher.cpp: (WebKit::ProcessLauncher::invalidate): * UIProcess/Launcher/ProcessLauncher.h: * UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::ProcessLauncher::terminateProcess): (WebKit::ProcessLauncher::platformInvalidate): (WebKit::ProcessLauncher::terminateXPCConnection): Tools: Add API test coverage, this test was timing out before the fix. * TestWebKitAPI/Tests/WebKitCocoa/WebProcessTerminate.mm: (TEST): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285720 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/UIProcess/API/Cocoa/WKProcessPool.mm branches/safari-612-branch/Source/WebKit/UIProcess/API/Cocoa/WKProcessPoolPrivate.h branches/safari-612-branch/Source/WebKit/UIProcess/Launcher/ProcessLauncher.cpp branches/safari-612-branch/Source/WebKit/UIProcess/Launcher/ProcessLauncher.h branches/safari-612-branch/Source/WebKit/UIProcess/Launcher/mac/ProcessLauncherMac.mm branches/safari-612-branch/Tools/ChangeLog branches/safari-612-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebProcessTerminate.mm Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286396 => 286397) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-02 00:18:04 UTC (rev 286396) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-02 00:18:08 UTC (rev 286397) @@ -1,5 +1,84 @@ 2021-12-01 Alan Coon +Cherry-pick r285720. rdar://problem/83941760 + +WebKit is unable to recover if a WebProcess gets terminated while it is launching +https://bugs.webkit.org/show_bug.cgi?id=233001 + + +Reviewed by Brent Fulgham. + +Source/WebKit: + +While investigating , I found that the WebAuthn Process would get +jetsammed, which would cause us to call WebProcessPool::terminateAllWebContentProcesses(). +I also noticed that if one of these WebProcesses was still launching at the time +of the termination, then the WebProcessProxy / WebPageProxy would keep thinking the +WebProcess is still launching and would never attempt to relaunch it. This would result +in a blank and unresponsive WKWebView which wouldn't be able to do any loads. + +The issue was due to ProcessLauncher::terminateProcess() calling invalidate(), which +it would not only terminate the XPC connection, it would also null out m_client. As a +result, we wouldn't notify the client that the process failed to launch. To address +the issue, I move the XPC connection termination logic out of invalidate() and into +its own terminateXPCConnection() function. I then called terminateXPCConnection() +instead of invalidate() inside ProcessLauncher::terminateProcess(). + +* UIProcess/API/Cocoa/WKProcessPool.mm: +(-[WKProcessPool _terminateAllWebContentProcesses]): +* UIProcess/API/Cocoa/WKProcessPoolPrivate.h: +* UIProcess/Launcher/ProcessLauncher.cpp: +(WebKit::ProcessLauncher::invalidate): +* UIProcess/Launcher/ProcessLauncher.h: +* UIProcess/Launcher/mac/ProcessLauncherMac.mm: +(WebKit::ProcessLauncher::terminateProcess): +(WebKit::ProcessLauncher::platformInvalidate): +(WebKit::ProcessLauncher::terminateXPCConnection): + +Tools: + +Add API test coverage, this test was timing o
[webkit-changes] [286394] branches/safari-612-branch
Title: [286394] branches/safari-612-branch Revision 286394 Author repst...@apple.com Date 2021-12-01 16:17:56 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r285569. rdar://problem/83070565 Enable dialog tests on Windows https://bugs.webkit.org/show_bug.cgi?id=232911 Reviewed by Youenn Fablet. The runtime flag sometimes seems to be off for Windows, change the member in RuntimeEnabledFeatures.h and re-enable tests. Source/WebCore: * page/RuntimeEnabledFeatures.h: LayoutTests: * platform/win/TestExpectations: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285569 268f45cc-cd09-0410-ab3c-d52691b4dbfc 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 (286393 => 286394) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 00:17:51 UTC (rev 286393) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 00:17:56 UTC (rev 286394) @@ -1,3 +1,37 @@ +2021-12-01 Alan Coon + +Cherry-pick r285569. rdar://problem/83070565 + +Enable dialog tests on Windows +https://bugs.webkit.org/show_bug.cgi?id=232911 + +Reviewed by Youenn Fablet. + +The runtime flag sometimes seems to be off for Windows, change the member in +RuntimeEnabledFeatures.h and re-enable tests. + +Source/WebCore: + +* page/RuntimeEnabledFeatures.h: + +LayoutTests: + +* platform/win/TestExpectations: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285569 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-10 Tim Nguyen + +Enable dialog tests on Windows +https://bugs.webkit.org/show_bug.cgi?id=232911 + +Reviewed by Youenn Fablet. + +The runtime flag sometimes seems to be off for Windows, change the member in +RuntimeEnabledFeatures.h and re-enable tests. + +* platform/win/TestExpectations: + 2021-11-16 Russell Epstein Cherry-pick r285823. rdar://problem/85236459 Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286393 => 286394) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 00:17:51 UTC (rev 286393) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 00:17:56 UTC (rev 286394) @@ -1,3 +1,37 @@ +2021-12-01 Alan Coon + +Cherry-pick r285569. rdar://problem/83070565 + +Enable dialog tests on Windows +https://bugs.webkit.org/show_bug.cgi?id=232911 + +Reviewed by Youenn Fablet. + +The runtime flag sometimes seems to be off for Windows, change the member in +RuntimeEnabledFeatures.h and re-enable tests. + +Source/WebCore: + +* page/RuntimeEnabledFeatures.h: + +LayoutTests: + +* platform/win/TestExpectations: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285569 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-10 Tim Nguyen + +Enable dialog tests on Windows +https://bugs.webkit.org/show_bug.cgi?id=232911 + +Reviewed by Youenn Fablet. + +The runtime flag sometimes seems to be off for Windows, change the member in +RuntimeEnabledFeatures.h and re-enable tests. + +* page/RuntimeEnabledFeatures.h: + 2021-11-16 Russell Epstein Cherry-pick r285823. rdar://problem/85236459 Modified: branches/safari-612-branch/Source/WebCore/page/RuntimeEnabledFeatures.h (286393 => 286394) --- branches/safari-612-branch/Source/WebCore/page/RuntimeEnabledFeatures.h 2021-12-02 00:17:51 UTC (rev 286393) +++ branches/safari-612-branch/Source/WebCore/page/RuntimeEnabledFeatures.h 2021-12-02 00:17:56 UTC (rev 286394) @@ -290,7 +290,7 @@ bool m_attrStyleEnabled { false }; bool m_webAPIStatisticsEnabled { false }; bool m_syntheticEditingCommandsEnabled { true }; -bool m_dialogElementEnabled { false }; +bool m_dialogElementEnabled { true }; 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] [286395] branches/safari-612-branch
Title: [286395] branches/safari-612-branch Revision 286395 Author repst...@apple.com Date 2021-12-01 16:18:00 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r285570. rdar://problem/83070565 Fix crash in GraphicsContextCG::endTransparencyLayer https://bugs.webkit.org/show_bug.cgi?id=230230 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. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285570 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/LayoutTests/ChangeLog branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/rendering/RenderLayer.cpp Added 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 (286394 => 286395) --- branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 00:17:56 UTC (rev 286394) +++ branches/safari-612-branch/LayoutTests/ChangeLog 2021-12-02 00:18:00 UTC (rev 286395) @@ -1,5 +1,49 @@ 2021-12-01 Alan Coon +Cherry-pick r285570. rdar://problem/83070565 + +Fix crash in GraphicsContextCG::endTransparencyLayer +https://bugs.webkit.org/show_bug.cgi?id=230230 + +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. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285570 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-10 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-01 Alan Coon + Cherry-pick r285569. rdar://problem/83070565 Enable dialog tests on Windows Added: branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt (0 => 286395) --- branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt (rev 0) +++ branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash-expected.txt 2021-12-02 00:18:00 UTC (rev 286395) @@ -0,0 +1 @@ +PASS if this doesn't crash Added: branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html (0 => 286395) --- branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html (rev 0) +++ branches/safari-612-branch/LayoutTests/fast/layers/top-layer-ancestor-opacity-and-transform-crash.html 2021-12-02 00:18:00 UTC (rev 286395) @@ -0,0 +1,9 @@ + +* { 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 (286394 => 286395) --- branches/safari-612-branch/Source/
[webkit-changes] [286393] branches/safari-612-branch/Source/WebKit
Title: [286393] branches/safari-612-branch/Source/WebKit Revision 286393 Author repst...@apple.com Date 2021-12-01 16:17:51 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r285138. rdar://problem/75139294 Avoid heap-allocating ImportanceAssertion https://bugs.webkit.org/show_bug.cgi?id=232579 Reviewed by Alex Christensen. Avoid heap-allocating ImportanceAssertion since this is just a wrapper around a mach_port. Also update the ImportanceAssertion destructor to null out the mach port as hardening given . * Platform/IPC/Decoder.cpp: (IPC::Decoder::setImportanceAssertion): * Platform/IPC/Decoder.h: * Platform/IPC/cocoa/ConnectionCocoa.mm: (IPC::Connection::receiveSourceEventHandler): * Platform/IPC/cocoa/ImportanceAssertion.h: (IPC::ImportanceAssertion::ImportanceAssertion): (IPC::ImportanceAssertion::operator=): (IPC::ImportanceAssertion::~ImportanceAssertion): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285138 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Platform/IPC/Decoder.cpp branches/safari-612-branch/Source/WebKit/Platform/IPC/Decoder.h branches/safari-612-branch/Source/WebKit/Platform/IPC/cocoa/ConnectionCocoa.mm branches/safari-612-branch/Source/WebKit/Platform/IPC/cocoa/ImportanceAssertion.h Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286392 => 286393) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-01 23:52:20 UTC (rev 286392) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-02 00:17:51 UTC (rev 286393) @@ -1,3 +1,54 @@ +2021-12-01 Alan Coon + +Cherry-pick r285138. rdar://problem/75139294 + +Avoid heap-allocating ImportanceAssertion +https://bugs.webkit.org/show_bug.cgi?id=232579 + +Reviewed by Alex Christensen. + +Avoid heap-allocating ImportanceAssertion since this is just a wrapper around a +mach_port. + +Also update the ImportanceAssertion destructor to null out the mach port as +hardening given . + +* Platform/IPC/Decoder.cpp: +(IPC::Decoder::setImportanceAssertion): +* Platform/IPC/Decoder.h: +* Platform/IPC/cocoa/ConnectionCocoa.mm: +(IPC::Connection::receiveSourceEventHandler): +* Platform/IPC/cocoa/ImportanceAssertion.h: +(IPC::ImportanceAssertion::ImportanceAssertion): +(IPC::ImportanceAssertion::operator=): +(IPC::ImportanceAssertion::~ImportanceAssertion): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285138 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-01 Chris Dumez + +Avoid heap-allocating ImportanceAssertion +https://bugs.webkit.org/show_bug.cgi?id=232579 + +Reviewed by Alex Christensen. + +Avoid heap-allocating ImportanceAssertion since this is just a wrapper around a +mach_port. + +Also update the ImportanceAssertion destructor to null out the mach port as +hardening given . + +* Platform/IPC/Decoder.cpp: +(IPC::Decoder::setImportanceAssertion): +* Platform/IPC/Decoder.h: +* Platform/IPC/cocoa/ConnectionCocoa.mm: +(IPC::Connection::receiveSourceEventHandler): +* Platform/IPC/cocoa/ImportanceAssertion.h: +(IPC::ImportanceAssertion::ImportanceAssertion): +(IPC::ImportanceAssertion::operator=): +(IPC::ImportanceAssertion::~ImportanceAssertion): + 2021-11-18 Russell Epstein Cherry-pick r285130. rdar://problem/85166839 Modified: branches/safari-612-branch/Source/WebKit/Platform/IPC/Decoder.cpp (286392 => 286393) --- branches/safari-612-branch/Source/WebKit/Platform/IPC/Decoder.cpp 2021-12-01 23:52:20 UTC (rev 286392) +++ branches/safari-612-branch/Source/WebKit/Platform/IPC/Decoder.cpp 2021-12-02 00:17:51 UTC (rev 286393) @@ -147,7 +147,7 @@ } #if PLATFORM(MAC) -void Decoder::setImportanceAssertion(std::unique_ptr assertion) +void Decoder::setImportanceAssertion(ImportanceAssertion&& assertion) { m_importanceAssertion = WTFMove(assertion); } Modified: branches/safari-612-branch/Source/WebKit/Platform/IPC/Decoder.h (286392 => 286393) --- branches/safari-612-branch/Source/WebKit/Platform/IPC/Decoder.h 2021-12-01 23:52:20 UTC (rev 286392) +++ branches/safari-612-branch/Source/WebKit/Platform/IPC/Decoder.h 2021-12-02 00:17:51 UTC (rev 286393) @@ -32,6 +32,10 @@ #include #include +#if PLATFORM(MAC) +#include "ImportanceAssertion.h" +#endif + #if HAVE(QOS_CLASSES) #include #endif @@ -38,7 +42,6 @@ namespace IPC { -class ImportanceAssertion; enum class MessageFlags : uint8_t; enum class ShouldDispatchWhenWaitingForSyncReply : uint8_t; @@ -67,7 +70,7 @@ bool shouldMaintainOrderingWithAsyncMessages() const; #if PLATFORM(MAC) -void setImportanceAssertion(std::uniq
[webkit-changes] [286399] branches/safari-612-branch
Title: [286399] branches/safari-612-branch Revision 286399 Author repst...@apple.com Date 2021-12-01 16:18:16 -0800 (Wed, 01 Dec 2021) Log Message Cherry-pick r286308. rdar://problem/63180952 Scripting attributes are sometimes not properly stripped from elements when JS is disabled https://bugs.webkit.org/show_bug.cgi?id=233642 Reviewed by Geoffrey Garen. Source/WebCore: HTMLConstructionSite::mergeAttributesFromTokenIntoElement() was not properly stripping scripting Element attributes when scripting is disabled, unlike other code paths in HTMLConstructionSite(). Covered by new API tests. * html/parser/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement): Tools: Add API test coverage. * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm: (TEST): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286308 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/html/parser/HTMLConstructionSite.cpp branches/safari-612-branch/Tools/ChangeLog branches/safari-612-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286398 => 286399) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 00:18:12 UTC (rev 286398) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-02 00:18:16 UTC (rev 286399) @@ -1,5 +1,51 @@ 2021-12-01 Alan Coon +Cherry-pick r286308. rdar://problem/63180952 + +Scripting attributes are sometimes not properly stripped from elements when JS is disabled +https://bugs.webkit.org/show_bug.cgi?id=233642 + + +Reviewed by Geoffrey Garen. + +Source/WebCore: + +HTMLConstructionSite::mergeAttributesFromTokenIntoElement() was not properly stripping scripting +Element attributes when scripting is disabled, unlike other code paths in HTMLConstructionSite(). + +Covered by new API tests. + +* html/parser/HTMLConstructionSite.cpp: +(WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement): + +Tools: + +Add API test coverage. + +* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm: +(TEST): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286308 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-30 Chris Dumez + +Scripting attributes are sometimes not properly stripped from elements when JS is disabled +https://bugs.webkit.org/show_bug.cgi?id=233642 + + +Reviewed by Geoffrey Garen. + +HTMLConstructionSite::mergeAttributesFromTokenIntoElement() was not properly stripping scripting +Element attributes when scripting is disabled, unlike other code paths in HTMLConstructionSite(). + +Covered by new API tests. + +* html/parser/HTMLConstructionSite.cpp: +(WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement): + +2021-12-01 Alan Coon + Cherry-pick r285570. rdar://problem/83070565 Fix crash in GraphicsContextCG::endTransparencyLayer Modified: branches/safari-612-branch/Source/WebCore/html/parser/HTMLConstructionSite.cpp (286398 => 286399) --- branches/safari-612-branch/Source/WebCore/html/parser/HTMLConstructionSite.cpp 2021-12-02 00:18:12 UTC (rev 286398) +++ branches/safari-612-branch/Source/WebCore/html/parser/HTMLConstructionSite.cpp 2021-12-02 00:18:16 UTC (rev 286399) @@ -292,6 +292,9 @@ if (token.attributes().isEmpty()) return; +if (!scriptingContentIsAllowed(m_parserContentPolicy)) +element.stripScriptingAttributes(token.attributes()); + for (auto& tokenAttribute : token.attributes()) { if (!element.elementData() || !element.findAttributeByName(tokenAttribute.name())) element.setAttribute(tokenAttribute.name(), tokenAttribute.value()); Modified: branches/safari-612-branch/Tools/ChangeLog (286398 => 286399) --- branches/safari-612-branch/Tools/ChangeLog 2021-12-02 00:18:12 UTC (rev 286398) +++ branches/safari-612-branch/Tools/ChangeLog 2021-12-02 00:18:16 UTC (rev 286399) @@ -1,5 +1,48 @@ 2021-12-01 Alan Coon +Cherry-pick r286308. rdar://problem/63180952 + +Scripting attributes are sometimes not properly stripped from elements when JS is disabled +https://bugs.webkit.org/show_bug.cgi?id=233642 + + +Reviewed by Geoffrey Garen. + +Source/WebCore: + +HTMLConstructionSite::mergeAttributesFromTokenIntoElement() was not properly stripping scripting +Element attributes when scripting is disabled, unlike other code paths in HTMLConstructionSite(). + +Covered by new API tests. + +* html/parser/HTMLConstructionSite.cpp: +(WebCore::HTMLConstructionSite::mergeAttributesFr
[webkit-changes] [286391] trunk/Source
Title: [286391] trunk/Source Revision 286391 Author ape...@igalia.com Date 2021-12-01 15:33:57 -0800 (Wed, 01 Dec 2021) Log Message Non-unified build fixes, early December 2021 edition https://bugs.webkit.org/show_bug.cgi?id=233699 Unreviewed non-unified build fixes. Source/_javascript_Core: * dfg/DFGCodeOriginPool.h: Add missing CodeOrigin.h header. * heap/Heap.cpp: Add missing GigacageAlignedMemoryAllocator.h header. * heap/IsoSubspace.cpp: Add missing IsoAlignedMemoryAllocator.h header, and remove IsoMemoryAllocatorBase.h as it is included by the former. * runtime/StackFrame.h: Add missing BytecodeIndex.h header. * runtime/StructureID.h: Add missing wtf/HashTraits.h header. * tools/Integrity.h: Add missing StructureID.h header. Source/WebCore: No new tests needed. * Modules/web-locks/WebLockManager.cpp: Add missing WebLock.h header. * Modules/web-locks/WebLockRegistry.cpp: Add missing wtf/CompletionHandler.h header. * platform/graphics/filters/FEBlend.cpp: Add missing ImageBuffer.h header. * platform/graphics/filters/FEMerge.cpp: Ditto. * platform/graphics/filters/FilterImage.h: Add missing FloatRect.h header. * workers/service/context/ServiceWorkerFetch.h: Add missing FetchIdentifier.h header. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGCodeOriginPool.h trunk/Source/_javascript_Core/heap/Heap.cpp trunk/Source/_javascript_Core/heap/IsoSubspace.cpp trunk/Source/_javascript_Core/runtime/StackFrame.h trunk/Source/_javascript_Core/runtime/StructureID.h trunk/Source/_javascript_Core/tools/Integrity.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/web-locks/WebLockManager.cpp trunk/Source/WebCore/Modules/web-locks/WebLockRegistry.cpp trunk/Source/WebCore/platform/graphics/filters/FEBlend.cpp trunk/Source/WebCore/platform/graphics/filters/FEMerge.cpp trunk/Source/WebCore/platform/graphics/filters/FilterImage.h trunk/Source/WebCore/workers/service/context/ServiceWorkerFetch.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286390 => 286391) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-01 23:15:43 UTC (rev 286390) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-01 23:33:57 UTC (rev 286391) @@ -1,3 +1,18 @@ +2021-12-01 Adrian Perez de Castro + +Non-unified build fixes, early December 2021 edition +https://bugs.webkit.org/show_bug.cgi?id=233699 + +Unreviewed non-unified build fixes. + +* dfg/DFGCodeOriginPool.h: Add missing CodeOrigin.h header. +* heap/Heap.cpp: Add missing GigacageAlignedMemoryAllocator.h header. +* heap/IsoSubspace.cpp: Add missing IsoAlignedMemoryAllocator.h header, and remove +IsoMemoryAllocatorBase.h as it is included by the former. +* runtime/StackFrame.h: Add missing BytecodeIndex.h header. +* runtime/StructureID.h: Add missing wtf/HashTraits.h header. +* tools/Integrity.h: Add missing StructureID.h header. + 2021-12-01 Yusuke Suzuki [JSC] RegExpTestInline DFG / FTL nodes should introduce a write-barrier Modified: trunk/Source/_javascript_Core/dfg/DFGCodeOriginPool.h (286390 => 286391) --- trunk/Source/_javascript_Core/dfg/DFGCodeOriginPool.h 2021-12-01 23:15:43 UTC (rev 286390) +++ trunk/Source/_javascript_Core/dfg/DFGCodeOriginPool.h 2021-12-01 23:33:57 UTC (rev 286391) @@ -28,6 +28,7 @@ #if ENABLE(DFG_JIT) #include "CallFrame.h" +#include "CodeOrigin.h" #include namespace JSC { namespace DFG { Modified: trunk/Source/_javascript_Core/heap/Heap.cpp (286390 => 286391) --- trunk/Source/_javascript_Core/heap/Heap.cpp 2021-12-01 23:15:43 UTC (rev 286390) +++ trunk/Source/_javascript_Core/heap/Heap.cpp 2021-12-01 23:33:57 UTC (rev 286391) @@ -36,6 +36,7 @@ #include "GCIncomingRefCountedSetInlines.h" #include "GCSegmentedArrayInlines.h" #include "GCTypeMap.h" +#include "GigacageAlignedMemoryAllocator.h" #include "HasOwnPropertyCache.h" #include "HeapHelperPool.h" #include "HeapIterationScope.h" Modified: trunk/Source/_javascript_Core/heap/IsoSubspace.cpp (286390 => 286391) --- trunk/Source/_javascript_Core/heap/IsoSubspace.cpp 2021-12-01 23:15:43 UTC (rev 286390) +++ trunk/Source/_javascript_Core/heap/IsoSubspace.cpp 2021-12-01 23:33:57 UTC (rev 286391) @@ -26,8 +26,8 @@ #include "config.h" #include "IsoSubspace.h" +#include "IsoAlignedMemoryAllocator.h" #include "IsoCellSetInlines.h" -#include "IsoMemoryAllocatorBase.h" #include "JSCellInlines.h" #include "MarkedSpaceInlines.h" Modified: trunk/Source/_javascript_Core/runtime/StackFrame.h (286390 => 286391) --- trunk/Source/_javascript_Core/runtime/StackFrame.h 2021-12-01 23:15:43 UTC (rev 286390) +++ trunk/Source/_javascript_Core/runtime/StackFrame.h 2021-12-01 23:33:57 UTC (rev 286391) @@ -25,6 +25,7 @@ #pragma once +#include "BytecodeIndex.h" #include "Heap.h" #include "SlotVisitorMacros.h" #include "VM.h" Modified: trunk/Source/_javascript_Core/runtime/StructureID.h (286390 => 286391) --- trunk/
[webkit-changes] [286390] trunk/Source/JavaScriptCore
Title: [286390] trunk/Source/_javascript_Core Revision 286390 Author ysuz...@apple.com Date 2021-12-01 15:15:43 -0800 (Wed, 01 Dec 2021) Log Message [JSC] RegExpTestInline DFG / FTL nodes should introduce a write-barrier https://bugs.webkit.org/show_bug.cgi?id=233716 Reviewed by Michael Saboff. Since RegExpTestInline fast path stores cells into JSGlobalObject's RegExpCachedResult field, we need to consider about inserting a write-barrier onto JSGlobalObject. This patch adds RegExpTestInline to DFGStoreBarrierInsertionPhase so that DFG / FTL inserts a write-barrier appropriately. * dfg/DFGStoreBarrierInsertionPhase.cpp: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGStoreBarrierInsertionPhase.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286389 => 286390) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-01 23:03:24 UTC (rev 286389) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-01 23:15:43 UTC (rev 286390) @@ -1,3 +1,17 @@ +2021-12-01 Yusuke Suzuki + +[JSC] RegExpTestInline DFG / FTL nodes should introduce a write-barrier +https://bugs.webkit.org/show_bug.cgi?id=233716 + +Reviewed by Michael Saboff. + +Since RegExpTestInline fast path stores cells into JSGlobalObject's RegExpCachedResult field, +we need to consider about inserting a write-barrier onto JSGlobalObject. +This patch adds RegExpTestInline to DFGStoreBarrierInsertionPhase so that DFG / FTL inserts +a write-barrier appropriately. + +* dfg/DFGStoreBarrierInsertionPhase.cpp: + 2021-12-01 Keith Miller Add static_assert the value we use to initialize a StructureID buffer should be 0. Modified: trunk/Source/_javascript_Core/dfg/DFGStoreBarrierInsertionPhase.cpp (286389 => 286390) --- trunk/Source/_javascript_Core/dfg/DFGStoreBarrierInsertionPhase.cpp 2021-12-01 23:03:24 UTC (rev 286389) +++ trunk/Source/_javascript_Core/dfg/DFGStoreBarrierInsertionPhase.cpp 2021-12-01 23:15:43 UTC (rev 286390) @@ -308,6 +308,11 @@ break; } +case RegExpTestInline: { +considerBarrier(m_node->child1()); +break; +} + case RecordRegExpCachedResult: { considerBarrier(m_graph.varArgChild(m_node, 0)); break; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286389] trunk/Tools
Title: [286389] trunk/Tools Revision 286389 Author cdu...@apple.com Date 2021-12-01 15:03:24 -0800 (Wed, 01 Dec 2021) Log Message 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 (286388 => 286389) --- trunk/Tools/ChangeLog 2021-12-01 22:58:55 UTC (rev 286388) +++ trunk/Tools/ChangeLog 2021-12-01 23:03:24 UTC (rev 286389) @@ -1,3 +1,9 @@ +2021-12-01 Chris Dumez + +Unreviewed API test build fix. + +* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm: + 2021-12-01 Alex Christensen Add csp-report resource type to WKContentRuleList Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm (286388 => 286389) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm 2021-12-01 22:58:55 UTC (rev 286388) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm 2021-12-01 23:03:24 UTC (rev 286389) @@ -26,11 +26,15 @@ #import "config.h" #import "DaemonTestUtilities.h" +#import "Test.h" #import "TestURLSchemeHandler.h" #import "TestWKWebView.h" +#import "Utilities.h" #import #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] [286388] branches/safari-612.3.6.1-branch/Source
Title: [286388] branches/safari-612.3.6.1-branch/Source Revision 286388 Author repst...@apple.com Date 2021-12-01 14:58:55 -0800 (Wed, 01 Dec 2021) Log Message Versioning. WebKit-7612.3.6.1.7 Modified Paths branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286387 => 286388) --- branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-01 22:24:43 UTC (rev 286387) +++ branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-01 22:58:55 UTC (rev 286388) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 6; +NANO_VERSION = 7; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286387 => 286388) --- branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-01 22:24:43 UTC (rev 286387) +++ branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-01 22:58:55 UTC (rev 286388) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 6; +NANO_VERSION = 7; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286387 => 286388) --- branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-01 22:24:43 UTC (rev 286387) +++ branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-01 22:58:55 UTC (rev 286388) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 6; +NANO_VERSION = 7; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig (286387 => 286388) --- branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-01 22:24:43 UTC (rev 286387) +++ branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-01 22:58:55 UTC (rev 286388) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 6; +NANO_VERSION = 7; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286387 => 286388) --- branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-01 22:24:43 UTC (rev 286387) +++ branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-01 22:58:55 UTC (rev 286388) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 6; +NANO_VERSION = 7; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (286387 => 286388) --- branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-12-01 22:24:43 UTC (rev 286387) +++ branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-12-01 22:58:55 UTC (rev 286388) @@ -2,7 +2,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 6; +NANO_VERSION = 7; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NAN
[webkit-changes] [286387] trunk/Source/JavaScriptCore
Title: [286387] trunk/Source/_javascript_Core Revision 286387 Author keith_mil...@apple.com Date 2021-12-01 14:24:43 -0800 (Wed, 01 Dec 2021) Log Message Add static_assert the value we use to initialize a StructureID buffer should be 0. https://bugs.webkit.org/show_bug.cgi?id=233720 Reviewed by Yusuke Suzuki. Also, add static assert that the zero we are putting into the buffer matches the default StructureID constructor. * runtime/StructureChain.cpp: (JSC::StructureChain::create): * runtime/StructureID.h: (JSC::StructureID::bits const): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/StructureChain.cpp trunk/Source/_javascript_Core/runtime/StructureID.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286386 => 286387) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-01 22:02:06 UTC (rev 286386) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-01 22:24:43 UTC (rev 286387) @@ -1,3 +1,18 @@ +2021-12-01 Keith Miller + +Add static_assert the value we use to initialize a StructureID buffer should be 0. +https://bugs.webkit.org/show_bug.cgi?id=233720 + +Reviewed by Yusuke Suzuki. + +Also, add static assert that the zero we are putting into the buffer +matches the default StructureID constructor. + +* runtime/StructureChain.cpp: +(JSC::StructureChain::create): +* runtime/StructureID.h: +(JSC::StructureID::bits const): + 2021-12-01 Yusuke Suzuki Unreviewed, use void* to suppress GCC warning Modified: trunk/Source/_javascript_Core/runtime/StructureChain.cpp (286386 => 286387) --- trunk/Source/_javascript_Core/runtime/StructureChain.cpp 2021-12-01 22:02:06 UTC (rev 286386) +++ trunk/Source/_javascript_Core/runtime/StructureChain.cpp 2021-12-01 22:24:43 UTC (rev 286387) @@ -49,6 +49,7 @@ ++size; // Sentinel nullptr. size_t bytes = Checked(size) * sizeof(StructureID); void* vector = vm.jsValueGigacageAuxiliarySpace().allocateNonVirtual(vm, bytes, nullptr, AllocationFailureMode::Assert); +static_assert(!StructureID().bits(), "Make sure the value we're going to memcpy below matches the default StructureID"); memset(vector, 0, bytes); StructureChain* chain = new (NotNull, allocateCell(vm)) StructureChain(vm, vm.structureChainStructure.get(), static_cast(vector)); chain->finishCreation(vm, head); Modified: trunk/Source/_javascript_Core/runtime/StructureID.h (286386 => 286387) --- trunk/Source/_javascript_Core/runtime/StructureID.h 2021-12-01 22:02:06 UTC (rev 286386) +++ trunk/Source/_javascript_Core/runtime/StructureID.h 2021-12-01 22:24:43 UTC (rev 286387) @@ -52,7 +52,7 @@ explicit operator bool() const { return !!m_bits; } bool operator==(StructureID const& other) const { return m_bits == other.m_bits; } bool operator!=(StructureID const& other) const { return m_bits != other.m_bits; } -uint32_t bits() const { return m_bits; } +constexpr uint32_t bits() const { return m_bits; } StructureID(WTF::HashTableDeletedValueType) : m_bits(nukedStructureIDBit) { } bool isHashTableDeletedValue() const { return *this == StructureID(WTF::HashTableDeletedValue); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286386] trunk/Source/WebKit
Title: [286386] trunk/Source/WebKit Revision 286386 Author commit-qu...@webkit.org Date 2021-12-01 14:02:06 -0800 (Wed, 01 Dec 2021) Log Message Unreviewed, reverting r286037. https://bugs.webkit.org/show_bug.cgi?id=233724 Introduced WebRTC crash Reverted changeset: "[macOS][GPUP] Remove access in sandbox to com.apple.audio.AudioComponentRegistrar" https://bugs.webkit.org/show_bug.cgi?id=231694 https://commits.webkit.org/r286037 Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/GPUProcess/GPUProcess.h trunk/Source/WebKit/GPUProcess/GPUProcess.messages.in trunk/Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in trunk/Source/WebKit/UIProcess/Cocoa/WebProcessProxyCocoa.mm trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebProcessProxy.h trunk/Source/WebKit/WebAuthnProcess/mac/com.apple.WebKit.WebAuthnProcess.sb.in trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj Removed Paths trunk/Source/WebKit/Shared/Cocoa/AudioComponentRegistration.cpp trunk/Source/WebKit/Shared/Cocoa/AudioComponentRegistration.h Diff Modified: trunk/Source/WebKit/ChangeLog (286385 => 286386) --- trunk/Source/WebKit/ChangeLog 2021-12-01 22:00:59 UTC (rev 286385) +++ trunk/Source/WebKit/ChangeLog 2021-12-01 22:02:06 UTC (rev 286386) @@ -1,3 +1,17 @@ +2021-12-01 Commit Queue + +Unreviewed, reverting r286037. +https://bugs.webkit.org/show_bug.cgi?id=233724 + +Introduced WebRTC crash + +Reverted changeset: + +"[macOS][GPUP] Remove access in sandbox to +com.apple.audio.AudioComponentRegistrar" +https://bugs.webkit.org/show_bug.cgi?id=231694 +https://commits.webkit.org/r286037 + 2021-12-01 Per Arne Vollan [WP] Sandbox telemetry is missing for some system calls Modified: trunk/Source/WebKit/GPUProcess/GPUProcess.h (286385 => 286386) --- trunk/Source/WebKit/GPUProcess/GPUProcess.h 2021-12-01 22:00:59 UTC (rev 286385) +++ trunk/Source/WebKit/GPUProcess/GPUProcess.h 2021-12-01 22:02:06 UTC (rev 286386) @@ -28,7 +28,6 @@ #if ENABLE(GPU_PROCESS) #include "AuxiliaryProcess.h" -#include "DataReference.h" #include "SandboxExtension.h" #include "WebPageProxyIdentifier.h" #include @@ -110,10 +109,6 @@ const String& applicationVisibleName() const { return m_applicationVisibleName; } -#if PLATFORM(COCOA) -void consumeAudioComponentRegistrations(const IPC::DataReference&); -#endif - void webProcessConnectionCountForTesting(CompletionHandler&&); private: Modified: trunk/Source/WebKit/GPUProcess/GPUProcess.messages.in (286385 => 286386) --- trunk/Source/WebKit/GPUProcess/GPUProcess.messages.in 2021-12-01 22:00:59 UTC (rev 286385) +++ trunk/Source/WebKit/GPUProcess/GPUProcess.messages.in 2021-12-01 22:02:06 UTC (rev 286386) @@ -76,10 +76,6 @@ NotifyPreferencesChanged(String domain, String key, std::optional encodedValue) #endif -#if PLATFORM(COCOA) -ConsumeAudioComponentRegistrations(IPC::SharedBufferDataReference registrationData) -#endif - WebProcessConnectionCountForTesting() -> (uint64_t count) Async } Modified: trunk/Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm (286385 => 286386) --- trunk/Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm 2021-12-01 22:00:59 UTC (rev 286385) +++ trunk/Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm 2021-12-01 22:02:06 UTC (rev 286386) @@ -30,7 +30,6 @@ #if ENABLE(GPU_PROCESS) && PLATFORM(COCOA) -#import "AudioComponentRegistration.h" #import "GPUConnectionToWebProcess.h" #import "RemoteRenderingBackend.h" #import @@ -76,11 +75,6 @@ #endif // ENABLE(CFPREFS_DIRECT_MODE) -void GPUProcess::consumeAudioComponentRegistrations(const IPC::DataReference& data) -{ -WebKit::consumeAudioComponentRegistrations(data); -} - } // namespace WebKit #endif // ENABLE(GPU_PROCESS) && PLATFORM(COCOA) Modified: trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in (286385 => 286386) --- trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in 2021-12-01 22:00:59 UTC (rev 286385) +++ trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in 2021-12-01 22:02:06 UTC (rev 286386) @@ -628,10 +628,8 @@ (allow ipc-posix-shm-read* ipc-posix-shm-write-data (ipc-posix-name-prefix "AudioIO")) -#if __MAC_OS_X_VERSION_MIN_REQUIRED < 12 (allow mach-lookup (global-name "com.apple.audio.AudioComponentRegistrar")) -#endif #if !ENABLE(CFPREFS_DIRECT_MODE) (allow mach-lookup (with telemetry) Deleted: trunk/Source/WebKit/Shared/Cocoa/AudioComponentRegistration.cpp (286385 => 286386) --- trunk/Source/WebKit/Shared/Cocoa/AudioComponentRegistration.cpp 2021-12-01 22:00:59 UTC (rev 286385) +++ trunk/Source/WebKit/Shared/Cocoa/AudioComponentRegistration.cpp 2021-12-01 22:02:06 UTC (rev 286386) @@ -1,50 +0,0 @@ -/* - * Copyright (C) 2021 Apple Inc.
[webkit-changes] [286385] tags/Safari-613.1.9.1/
Title: [286385] tags/Safari-613.1.9.1/ Revision 286385 Author repst...@apple.com Date 2021-12-01 14:00:59 -0800 (Wed, 01 Dec 2021) Log Message Tag Safari-613.1.9.1. Added Paths tags/Safari-613.1.9.1/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286384] branches/safari-613.1.9-branch/Source
Title: [286384] branches/safari-613.1.9-branch/Source Revision 286384 Author repst...@apple.com Date 2021-12-01 14:00:16 -0800 (Wed, 01 Dec 2021) Log Message Versioning. WebKit-7613.1.9.1 Modified Paths branches/safari-613.1.9-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-613.1.9-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-613.1.9-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-613.1.9-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-613.1.9-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-613.1.9-branch/Source/WebGPU/Configurations/Version.xcconfig branches/safari-613.1.9-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-613.1.9-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-613.1.9-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-613.1.9-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286383 => 286384) --- branches/safari-613.1.9-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-01 21:31:04 UTC (rev 286383) +++ branches/safari-613.1.9-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-01 22:00:16 UTC (rev 286384) @@ -24,9 +24,9 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; TINY_VERSION = 9; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: branches/safari-613.1.9-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286383 => 286384) --- branches/safari-613.1.9-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-01 21:31:04 UTC (rev 286383) +++ branches/safari-613.1.9-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-01 22:00:16 UTC (rev 286384) @@ -24,9 +24,9 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; TINY_VERSION = 9; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: branches/safari-613.1.9-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286383 => 286384) --- branches/safari-613.1.9-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-01 21:31:04 UTC (rev 286383) +++ branches/safari-613.1.9-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-01 22:00:16 UTC (rev 286384) @@ -24,9 +24,9 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; TINY_VERSION = 9; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: branches/safari-613.1.9-branch/Source/WebCore/Configurations/Version.xcconfig (286383 => 286384) --- branches/safari-613.1.9-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-01 21:31:04 UTC (rev 286383) +++ branches/safari-613.1.9-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-01 22:00:16 UTC (rev 286384) @@ -24,9 +24,9 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; TINY_VERSION = 9; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION)); Modified: branches/safari-613.1.9-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286383 => 286384) --- branches/safari-613.1.9-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-01 21:31:04 UTC (rev 286383) +++ branches/safari-613.1.9-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-01 22:00:16 UTC (rev 286384) @@ -24,9 +24,9 @@ MAJOR_VERSION = 613; MINOR_VERSION = 1; TINY_VERSION = 9; -MICRO_VERSION = 0; +MICRO_VERSION = 1; NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); // The bundle version and short version string are set based on the cur
[webkit-changes] [286383] trunk
Title: [286383] trunk Revision 286383 Author achristen...@apple.com Date 2021-12-01 13:31:04 -0800 (Wed, 01 Dec 2021) Log Message Add csp-report resource type to WKContentRuleList https://bugs.webkit.org/show_bug.cgi?id=233675 Reviewed by Tim Hatcher. Source/WebCore: This feature is trivial to implement and test except for one small thing: we use a uint16_t to represent the resource type and context and first party flags, and we already have 16 of them. So we needed to get another bit from somewhere. What I did was make the flags have a variable length from 1-3 bytes instead of just 2 bytes. I used the unused upper bits in the instruction to indicate the length of the flags, and if the upper bits were 0, then I assume it was 2 bytes, which is binary compatible with existing compiled WKContentRuleLists, so no need to increment the version number and force a recompile. It worked so well that I did the same thing with the actions, which were 4 bytes but are now 1-4 bytes. This reduced the compiled binary size of one of the tests from 313 bytes to 288 bytes, a reduction of about 8% of the binary size of the compiled WKContentRuleLists. Larger lists will see slightly less binary size reduction, but still an improvement. * contentextensions/ContentExtension.cpp: (WebCore::ContentExtensions::ContentExtension::ContentExtension): (WebCore::ContentExtensions::ContentExtension::populateConditionCacheIfNeeded): * contentextensions/ContentExtensionsBackend.cpp: (WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad const): * contentextensions/DFABytecode.h: (WebCore::ContentExtensions::smallestPossibleJumpSize): (): Deleted. (WebCore::ContentExtensions::instructionSizeWithArguments): Deleted. * contentextensions/DFABytecodeCompiler.cpp: (WebCore::ContentExtensions::append): (WebCore::ContentExtensions::append24BitInteger): (WebCore::ContentExtensions::appendZeroes): (WebCore::ContentExtensions::setBits): (WebCore::ContentExtensions::bytecodeFlagsSize): (WebCore::ContentExtensions::bytecodeActionSize): (WebCore::ContentExtensions::appendVariableLengthInteger): (WebCore::ContentExtensions::DFABytecodeCompiler::emitAppendAction): (WebCore::ContentExtensions::DFABytecodeCompiler::emitJump): (WebCore::ContentExtensions::DFABytecodeCompiler::emitCheckValue): (WebCore::ContentExtensions::DFABytecodeCompiler::emitCheckValueRange): (WebCore::ContentExtensions::DFABytecodeCompiler::transitions): (WebCore::ContentExtensions::DFABytecodeCompiler::compileJumpTable): (WebCore::ContentExtensions::DFABytecodeCompiler::nodeTransitionsMaxBytecodeSize): (WebCore::ContentExtensions::DFABytecodeCompiler::compile): * contentextensions/DFABytecodeInterpreter.cpp: (WebCore::ContentExtensions::getBits): (WebCore::ContentExtensions::get24Bits): (WebCore::ContentExtensions::getInstruction): (WebCore::ContentExtensions::jumpSizeInBytes): (WebCore::ContentExtensions::consumeInteger): (WebCore::ContentExtensions::consume24BitInteger): (WebCore::ContentExtensions::hasFlags): (WebCore::ContentExtensions::hasAction): (WebCore::ContentExtensions::consumeResourceFlagsAndInstruction): (WebCore::ContentExtensions::consumeAction): (WebCore::ContentExtensions::getJumpSize): (WebCore::ContentExtensions::getJumpDistance): (WebCore::ContentExtensions::matchesCondition): (WebCore::ContentExtensions::DFABytecodeInterpreter::interpretAppendAction): (WebCore::ContentExtensions::DFABytecodeInterpreter::interpretTestFlagsAndAppendAction): (WebCore::ContentExtensions::DFABytecodeInterpreter::interpetJumpTable): (WebCore::ContentExtensions::DFABytecodeInterpreter::actionsMatchingEverything): (WebCore::ContentExtensions::DFABytecodeInterpreter::interpretWithConditions): (WebCore::ContentExtensions::DFABytecodeInterpreter::interpret): * contentextensions/DFABytecodeInterpreter.h: (WebCore::ContentExtensions::DFABytecodeInterpreter::DFABytecodeInterpreter): * loader/PingLoader.cpp: (WebCore::PingLoader::sendViolationReport): * loader/ResourceLoadInfo.cpp: (WebCore::ContentExtensions::readResourceType): * loader/ResourceLoadInfo.h: Tools: * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp: (TestWebKitAPI::compareContents): (TestWebKitAPI::TEST_F): * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm: (TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/contentextensions/ContentExtension.cpp trunk/Source/WebCore/contentextensions/ContentExtensionsBackend.cpp trunk/Source/WebCore/contentextensions/DFABytecode.h trunk/Source/WebCore/contentextensions/DFABytecodeCompiler.cpp trunk/Source/WebCore/contentextensions/DFABytecodeInterpreter.cpp trunk/Source/WebCore/contentextensions/DFABytecodeInterpreter.h trunk/Source/WebCore/loader/PingLoader.cpp trunk/Source/WebCore/loader/ResourceLoadInfo.cpp trunk/Source/WebCore/loader/ResourceLoadInfo.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm
[webkit-changes] [286382] trunk/Source/JavaScriptCore
Title: [286382] trunk/Source/_javascript_Core Revision 286382 Author ysuz...@apple.com Date 2021-12-01 13:25:07 -0800 (Wed, 01 Dec 2021) Log Message Unreviewed, use void* to suppress GCC warning https://bugs.webkit.org/show_bug.cgi?id=233379 * runtime/StructureChain.cpp: (JSC::StructureChain::create): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/StructureChain.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286381 => 286382) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-01 21:18:54 UTC (rev 286381) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-01 21:25:07 UTC (rev 286382) @@ -1,3 +1,11 @@ +2021-12-01 Yusuke Suzuki + +Unreviewed, use void* to suppress GCC warning +https://bugs.webkit.org/show_bug.cgi?id=233379 + +* runtime/StructureChain.cpp: +(JSC::StructureChain::create): + 2021-12-01 Mikhail R. Gadelha Disable madd4 instruction generation globally for MIPS Modified: trunk/Source/_javascript_Core/runtime/StructureChain.cpp (286381 => 286382) --- trunk/Source/_javascript_Core/runtime/StructureChain.cpp 2021-12-01 21:18:54 UTC (rev 286381) +++ trunk/Source/_javascript_Core/runtime/StructureChain.cpp 2021-12-01 21:25:07 UTC (rev 286382) @@ -48,9 +48,9 @@ ++size; ++size; // Sentinel nullptr. size_t bytes = Checked(size) * sizeof(StructureID); -StructureID* vector = static_cast(vm.jsValueGigacageAuxiliarySpace().allocateNonVirtual(vm, bytes, nullptr, AllocationFailureMode::Assert)); +void* vector = vm.jsValueGigacageAuxiliarySpace().allocateNonVirtual(vm, bytes, nullptr, AllocationFailureMode::Assert); memset(vector, 0, bytes); -StructureChain* chain = new (NotNull, allocateCell(vm)) StructureChain(vm, vm.structureChainStructure.get(), vector); +StructureChain* chain = new (NotNull, allocateCell(vm)) StructureChain(vm, vm.structureChainStructure.get(), static_cast(vector)); chain->finishCreation(vm, head); return chain; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286381] trunk/Source/WebKit
Title: [286381] trunk/Source/WebKit Revision 286381 Author pvol...@apple.com Date 2021-12-01 13:18:54 -0800 (Wed, 01 Dec 2021) Log Message [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: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (286380 => 286381) --- trunk/Source/WebKit/ChangeLog 2021-12-01 21:05:22 UTC (rev 286380) +++ trunk/Source/WebKit/ChangeLog 2021-12-01 21:18:54 UTC (rev 286381) @@ -1,3 +1,16 @@ +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-01 Chris Dumez Unreviewed build fixes after r286346. Modified: trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in (286380 => 286381) --- trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2021-12-01 21:05:22 UTC (rev 286380) +++ trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2021-12-01 21:18:54 UTC (rev 286381) @@ -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 ;; @@ -2003,13 +2014,9 @@ SYS_munlock SYS_necp_client_action SYS_necp_open -SYS_open SYS_open_dprotected_np ;; -SYS_open_nocancel -SYS_openat SYS_openat_nocancel SYS_pipe -SYS_proc_info SYS_proc_rlimit_control SYS_process_policy SYS_psynch_rw_rdlock ;; @@ -2037,7 +2044,6 @@ SYS_socketpair SYS_stat64_extended ;; SYS_sysctl -SYS_sysctlbyname SYS_terminate_with_payload ;; SYS_thread_selfusage #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 11 @@ -2044,9 +2050,7 @@ SYS_ulock_wait2 ;; #endif SYS_unlink -SYS_write -SYS_write_nocancel -SYS_writev)) +SYS_write)) (when (defined? 'syscall-unix) (deny syscall-unix (with send-signal SIGKILL)) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286380] trunk/Source/WebKit
Title: [286380] trunk/Source/WebKit Revision 286380 Author cdu...@apple.com Date 2021-12-01 13:05:22 -0800 (Wed, 01 Dec 2021) Log Message Unreviewed build fixes after r286346. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::startDisplayLink): (WebKit::MomentumEventDispatcher::displayWasRefreshed): (WebKit::MomentumEventDispatcher::didReceiveScrollEventWithInterval): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::offsetAtTime): (WebKit::momentumDecayRate): (WebKit::MomentumEventDispatcher::computeNextDelta): * WebProcess/WebPage/MomentumEventDispatcher.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: trunk/Source/WebKit/ChangeLog (286379 => 286380) --- trunk/Source/WebKit/ChangeLog 2021-12-01 20:58:14 UTC (rev 286379) +++ trunk/Source/WebKit/ChangeLog 2021-12-01 21:05:22 UTC (rev 286380) @@ -1,3 +1,17 @@ +2021-12-01 Chris Dumez + +Unreviewed build fixes after r286346. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::startDisplayLink): +(WebKit::MomentumEventDispatcher::displayWasRefreshed): +(WebKit::MomentumEventDispatcher::didReceiveScrollEventWithInterval): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::offsetAtTime): +(WebKit::momentumDecayRate): +(WebKit::MomentumEventDispatcher::computeNextDelta): +* WebProcess/WebPage/MomentumEventDispatcher.h: + 2021-12-01 Youenn Fablet Reuse navigation preload if service worker is fetching the corresponding navigation request Modified: trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286379 => 286380) --- trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-01 20:58:14 UTC (rev 286379) +++ trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-01 21:05:22 UTC (rev 286380) @@ -30,8 +30,10 @@ #include "EventDispatcher.h" #include "Logging.h" +#include "WebProcess.h" #include "WebProcessProxyMessages.h" #include +#include namespace WebKit { @@ -221,7 +223,7 @@ } // FIXME: Switch down to lower-than-full-speed frame rates for the tail end of the curve. -WebProcess::singleton().parentProcessConnection()->send(Messages::WebProcessProxy::StartDisplayLink(m_observerID, displayID, FullSpeedFramesPerSecond), 0); +WebProcess::singleton().parentProcessConnection()->send(Messages::WebProcessProxy::StartDisplayLink(m_observerID, displayID, WebCore::FullSpeedFramesPerSecond), 0); RELEASE_LOG(ScrollAnimations, "MomentumEventDispatcher starting display link for display %d", displayID); } @@ -262,9 +264,9 @@ #if !USE(MOMENTUM_EVENT_DISPATCHER_PREMATURE_ROUNDING) // Intentional delta rounding (but at the end!). -FloatSize delta = roundedIntSize(desiredOffset - m_currentGesture.currentOffset); +WebCore::FloatSize delta = roundedIntSize(desiredOffset - m_currentGesture.currentOffset); #else -FloatSize delta = desiredOffset - m_currentGesture.currentOffset; +WebCore::FloatSize delta = desiredOffset - m_currentGesture.currentOffset; #endif dispatchSyntheticMomentumEvent(WebWheelEvent::PhaseChanged, -delta); @@ -272,7 +274,7 @@ m_currentGesture.currentOffset += delta; } -void MomentumEventDispatcher::didReceiveScrollEventWithInterval(FloatSize size, Seconds frameInterval) +void MomentumEventDispatcher::didReceiveScrollEventWithInterval(WebCore::FloatSize size, Seconds frameInterval) { auto push = [](HistoricalDeltas& deltas, Delta newDelta) { bool directionChanged = deltas.size() && (deltas.first().rawPlatformDelta > 0) != (newDelta.rawPlatformDelta > 0); @@ -310,7 +312,7 @@ didReceiveScrollEventWithInterval(delta, frameInterval); } -void MomentumEventDispatcher::buildOffsetTableWithInitialDelta(FloatSize initialUnacceleratedDelta) +void MomentumEventDispatcher::buildOffsetTableWithInitialDelta(WebCore::FloatSize initialUnacceleratedDelta) { #if USE(MOMENTUM_EVENT_DISPATCHER_PREMATURE_ROUNDING) m_currentGesture.carryOffset = { }; @@ -317,11 +319,11 @@ #endif m_currentGesture.offsetTable.clear(); -FloatSize accumulatedOffset; -FloatSize unacceleratedDelta = initialUnacceleratedDelta; +WebCore::FloatSize accumulatedOffset; +WebCore::FloatSize unacceleratedDelta = initialUnacceleratedDelta; do { -FloatSize acceleratedDelta; +WebCore::FloatSize acceleratedDelta; std::tie(unacceleratedDelta, acceleratedDelta) = computeNextDelta(unacceleratedDelta); accumulatedOffset += acceleratedDelta; @@ -336,7 +338,7 @@ return a + t * (b - a); } -FloatSize MomentumEventDispatcher::offsetAtTime(Seconds time) +WebCore::F
[webkit-changes] [286379] trunk/Source/WebCore
Title: [286379] trunk/Source/WebCore Revision 286379 Author commit-qu...@webkit.org Date 2021-12-01 12:58:14 -0800 (Wed, 01 Dec 2021) Log Message Remove virtual from RenderWidget::paintContents https://bugs.webkit.org/show_bug.cgi?id=233709 Patch by Rob Buis on 2021-12-01 Reviewed by Simon Fraser. Remove virtual from RenderWidget:: paintContents since it is not overridden. * rendering/RenderWidget.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderWidget.h Diff Modified: trunk/Source/WebCore/ChangeLog (286378 => 286379) --- trunk/Source/WebCore/ChangeLog 2021-12-01 20:32:39 UTC (rev 286378) +++ trunk/Source/WebCore/ChangeLog 2021-12-01 20:58:14 UTC (rev 286379) @@ -1,3 +1,14 @@ +2021-12-01 Rob Buis + +Remove virtual from RenderWidget::paintContents +https://bugs.webkit.org/show_bug.cgi?id=233709 + +Reviewed by Simon Fraser. + +Remove virtual from RenderWidget:: paintContents since it is not overridden. + +* rendering/RenderWidget.h: + 2021-12-01 Philippe Normand [GStreamer] requestVideoFrameCallback support Modified: trunk/Source/WebCore/rendering/RenderWidget.h (286378 => 286379) --- trunk/Source/WebCore/rendering/RenderWidget.h 2021-12-01 20:32:39 UTC (rev 286378) +++ trunk/Source/WebCore/rendering/RenderWidget.h 2021-12-01 20:58:14 UTC (rev 286379) @@ -82,7 +82,6 @@ void layout() override; void paint(PaintInfo&, const LayoutPoint&) override; bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction) override; -virtual void paintContents(PaintInfo&, const LayoutPoint&); bool requiresLayer() const override; private: @@ -99,6 +98,8 @@ bool setWidgetGeometry(const LayoutRect&); bool updateWidgetGeometry(); +void paintContents(PaintInfo&, const LayoutPoint&); + RefPtr m_widget; IntRect m_clipRect; // The rectangle needs to remain correct after scrolling, so it is stored in content view coordinates, and not clipped to window. unsigned m_refCount { 1 }; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286378] trunk/Source/JavaScriptCore
Title: [286378] trunk/Source/_javascript_Core Revision 286378 Author commit-qu...@webkit.org Date 2021-12-01 12:32:39 -0800 (Wed, 01 Dec 2021) Log Message Disable madd4 instruction generation globally for MIPS https://bugs.webkit.org/show_bug.cgi?id=233713 Patch by Mikhail R. Gadelha on 2021-12-01 Reviewed by Yusuke Suzuki. This is an improved version of r285788 and follows the approach used in r231301. This patch removes the volatile attribute from the double variable and adds a -mno-madd4 flag globally when compiling on MIPS. * CMakeLists.txt: * runtime/ParseInt.h: (JSC::parseInt): Modified Paths trunk/Source/_javascript_Core/CMakeLists.txt trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/ParseInt.h Diff Modified: trunk/Source/_javascript_Core/CMakeLists.txt (286377 => 286378) --- trunk/Source/_javascript_Core/CMakeLists.txt 2021-12-01 20:29:49 UTC (rev 286377) +++ trunk/Source/_javascript_Core/CMakeLists.txt 2021-12-01 20:32:39 UTC (rev 286378) @@ -1458,6 +1458,12 @@ # Avoid using fused multiply-add instructions since this could give different results # for e.g. parseInt depending on the platform and compilation flags. WEBKIT_ADD_TARGET_CXX_FLAGS(_javascript_Core -ffp-contract=off -fno-slp-vectorize) + +# On MIPS we have to explicitly disable madd4, since some versions of gcc still generate +# such instructions despite -ffp-contract=off +if (WTF_CPU_MIPS) +WEBKIT_ADD_TARGET_CXX_FLAGS(_javascript_Core -mno-madd4) +endif () endif () WEBKIT_COPY_FILES(_javascript_Core_CopyHeaders Modified: trunk/Source/_javascript_Core/ChangeLog (286377 => 286378) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-01 20:29:49 UTC (rev 286377) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-01 20:32:39 UTC (rev 286378) @@ -1,3 +1,18 @@ +2021-12-01 Mikhail R. Gadelha + +Disable madd4 instruction generation globally for MIPS +https://bugs.webkit.org/show_bug.cgi?id=233713 + +Reviewed by Yusuke Suzuki. + +This is an improved version of r285788 and follows the approach used +in r231301. This patch removes the volatile attribute from the double +variable and adds a -mno-madd4 flag globally when compiling on MIPS. + +* CMakeLists.txt: +* runtime/ParseInt.h: +(JSC::parseInt): + 2021-12-01 Yusuke Suzuki Unreviewed, fix CLoop build Modified: trunk/Source/_javascript_Core/runtime/ParseInt.h (286377 => 286378) --- trunk/Source/_javascript_Core/runtime/ParseInt.h 2021-12-01 20:29:49 UTC (rev 286377) +++ trunk/Source/_javascript_Core/runtime/ParseInt.h 2021-12-01 20:32:39 UTC (rev 286378) @@ -162,15 +162,7 @@ // 14. Let number be the Number value for mathInt. int firstDigitPosition = p; bool sawDigit = false; -#if COMPILER(GCC) -// Due to a bug found in GCC v8.4.0, a wrong fused multiply-add optimization can be inserted when calculating the final number, -// in number *= radix; number += digit;, so add volatile to prevent optimizations. -// GCC v8.4.0 also seems to ignore #pragma STDC FP_CONTRACT OFF, compiling with -ffp-contract=off, and setting function attributes -// __attribute__((optimize("fp-contract=off"))) and __attribute__((optimize("-ffp-contract=off"))). -volatile double number = 0; -#else double number = 0; -#endif while (p < length) { int digit = parseDigit(data[p], radix); if (digit == -1) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286377] trunk/Source/WTF
Title: [286377] trunk/Source/WTF Revision 286377 Author hironori.fu...@sony.com Date 2021-12-01 12:29:49 -0800 (Wed, 01 Dec 2021) Log Message [Win] OSAllocator::reserveUncommittedAligned should use aligned allocation https://bugs.webkit.org/show_bug.cgi?id=233674 Reviewed by Keith Miller. OSAllocator::reserveUncommittedAligned reserved 2GiB for 1GiB aligned allocation request. Windows 10 (Desktop) has VirtualAlloc2 API to aligned allocation. * wtf/win/OSAllocatorWin.cpp: (WTF::OSAllocator::reserveUncommittedAligned): Use VirtualAlloc2 API if available. Use SOFT_LINK_OPTIONAL for VirtualAlloc2. Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/win/OSAllocatorWin.cpp Diff Modified: trunk/Source/WTF/ChangeLog (286376 => 286377) --- trunk/Source/WTF/ChangeLog 2021-12-01 19:36:54 UTC (rev 286376) +++ trunk/Source/WTF/ChangeLog 2021-12-01 20:29:49 UTC (rev 286377) @@ -1,3 +1,19 @@ +2021-12-01 Fujii Hironori + +[Win] OSAllocator::reserveUncommittedAligned should use aligned allocation +https://bugs.webkit.org/show_bug.cgi?id=233674 + +Reviewed by Keith Miller. + +OSAllocator::reserveUncommittedAligned reserved 2GiB for 1GiB +aligned allocation request. + +Windows 10 (Desktop) has VirtualAlloc2 API to aligned allocation. + +* wtf/win/OSAllocatorWin.cpp: +(WTF::OSAllocator::reserveUncommittedAligned): Use VirtualAlloc2 +API if available. Use SOFT_LINK_OPTIONAL for VirtualAlloc2. + 2021-12-01 Lauro Moura Unreviewed. Fix -Wformat warning after in ThreadingPosix logging Modified: trunk/Source/WTF/wtf/win/OSAllocatorWin.cpp (286376 => 286377) --- trunk/Source/WTF/wtf/win/OSAllocatorWin.cpp 2021-12-01 19:36:54 UTC (rev 286376) +++ trunk/Source/WTF/wtf/win/OSAllocatorWin.cpp 2021-12-01 20:29:49 UTC (rev 286377) @@ -30,7 +30,11 @@ #include #include #include +#include +SOFT_LINK_LIBRARY(kernelbase) +SOFT_LINK_OPTIONAL(kernelbase, VirtualAlloc2, void*, WINAPI, (HANDLE, PVOID, SIZE_T, ULONG, ULONG, MEM_EXTENDED_PARAMETER *, ULONG)) + namespace WTF { static inline DWORD protection(bool writable, bool executable) @@ -51,7 +55,17 @@ void* OSAllocator::reserveUncommittedAligned(size_t bytes, Usage usage, bool writable, bool executable, bool, bool) { ASSERT(hasOneBitSet(bytes) && bytes >= pageSize()); -// FIXME: Is there a way to do this where we can either release the excess reservation or not reserve it at all? +if (VirtualAlloc2Ptr()) { +MEM_ADDRESS_REQUIREMENTS addressReqs = { }; +MEM_EXTENDED_PARAMETER param = { }; +addressReqs.Alignment = bytes; +param.Type = MemExtendedParameterAddressRequirements; +param.Pointer = &addressReqs; +void* result = VirtualAlloc2Ptr()(nullptr, nullptr, bytes, MEM_RESERVE, protection(writable, executable), ¶m, 1); +if (!result) +CRASH(); +return result; +} void* result = reserveUncommitted(2 * bytes, usage, writable, executable); char* aligned = reinterpret_cast(roundUpToMultipleOf(bytes, reinterpret_cast(result))); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286376] trunk/Tools
Title: [286376] trunk/Tools Revision 286376 Author ryanhad...@apple.com Date 2021-12-01 11:36:54 -0800 (Wed, 01 Dec 2021) Log Message [ iOS ] TestWebKitAPI.ApplicationManifest.IconCoding is a constant failure https://bugs.webkit.org/show_bug.cgi?id=233715 Reviewed by Tim Horton. * TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm: (TestWebKitAPI::TEST): Remove a fragile assertion about the size of NSKeyedArchive that is causing the test to fail on iOS. Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm Diff Modified: trunk/Tools/ChangeLog (286375 => 286376) --- trunk/Tools/ChangeLog 2021-12-01 19:28:46 UTC (rev 286375) +++ trunk/Tools/ChangeLog 2021-12-01 19:36:54 UTC (rev 286376) @@ -1,3 +1,13 @@ +2021-12-01 Ryan Haddad + +[ iOS ] TestWebKitAPI.ApplicationManifest.IconCoding is a constant failure +https://bugs.webkit.org/show_bug.cgi?id=233715 + +Reviewed by Tim Horton. + +* TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm: +(TestWebKitAPI::TEST): Remove a fragile assertion about the size of NSKeyedArchive that is causing the test to fail on iOS. + 2021-12-01 W.D. Xiong [macOS] run-benchmark should take diagnostic screenshots upon test timeout Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm (286375 => 286376) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm 2021-12-01 19:28:46 UTC (rev 286375) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm 2021-12-01 19:36:54 UTC (rev 286376) @@ -375,7 +375,6 @@ NSError *error = nil; NSData *archiveData = [NSKeyedArchiver archivedDataWithRootObject:manifestIcon.get() requiringSecureCoding:YES error:&error]; -EXPECT_EQ(archiveData.length, 602ull); EXPECT_NULL(error); _WKApplicationManifestIcon *decodedIcon = [NSKeyedUnarchiver unarchivedObjectOfClass:[_WKApplicationManifestIcon class] fromData:archiveData error:&error]; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286375] trunk/LayoutTests
Title: [286375] trunk/LayoutTests Revision 286375 Author lmo...@igalia.com Date 2021-12-01 11:28:46 -0800 (Wed, 01 Dec 2021) Log Message [GLIB] Skip model tag test Unreviewed test gardening. is not enabled/supported in GTK/WPE. * platform/glib/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/glib/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (286374 => 286375) --- trunk/LayoutTests/ChangeLog 2021-12-01 19:23:32 UTC (rev 286374) +++ trunk/LayoutTests/ChangeLog 2021-12-01 19:28:46 UTC (rev 286375) @@ -1,3 +1,13 @@ +2021-12-01 Lauro Moura + +[GLIB] Skip model tag test + +Unreviewed test gardening. + + is not enabled/supported in GTK/WPE. + +* platform/glib/TestExpectations: + 2021-12-01 Philippe Normand [GStreamer] requestVideoFrameCallback support Modified: trunk/LayoutTests/platform/glib/TestExpectations (286374 => 286375) --- trunk/LayoutTests/platform/glib/TestExpectations 2021-12-01 19:23:32 UTC (rev 286374) +++ trunk/LayoutTests/platform/glib/TestExpectations 2021-12-01 19:28:46 UTC (rev 286375) @@ -1870,6 +1870,9 @@ editing/text-iterator/backwards-text-iterator-attachment.html [ Skip ] fast/css/has-attachment.html [ Skip ] +# is not supported by GTK/WPE +http/tests/model/ [ Skip ] + # # End of UNSUPPORTED tests. # ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286374] trunk/Tools
Title: [286374] trunk/Tools Revision 286374 Author w...@apple.com Date 2021-12-01 11:23:32 -0800 (Wed, 01 Dec 2021) Log Message [macOS] run-benchmark should take diagnostic screenshots upon test timeout https://bugs.webkit.org/show_bug.cgi?id=232736 Reviewed by Dewei Zhu. Added defaults for the --diagnose-directory flag depending on platform. Added diagnose_test_failure method to OSXBrowserDriver to take screenshots and save to diagnostic directory. * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py: (OSXBrowserDriver._save_screenshot_to_path): (OSXBrowserDriver): (OSXBrowserDriver.diagnose_test_failure): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py trunk/Tools/Scripts/webkitpy/benchmark_runner/run_benchmark.py Diff Modified: trunk/Tools/ChangeLog (286373 => 286374) --- trunk/Tools/ChangeLog 2021-12-01 19:14:23 UTC (rev 286373) +++ trunk/Tools/ChangeLog 2021-12-01 19:23:32 UTC (rev 286374) @@ -1,3 +1,18 @@ +2021-12-01 W.D. Xiong + +[macOS] run-benchmark should take diagnostic screenshots upon test timeout +https://bugs.webkit.org/show_bug.cgi?id=232736 + +Reviewed by Dewei Zhu. + +Added defaults for the --diagnose-directory flag depending on platform. +Added diagnose_test_failure method to OSXBrowserDriver to take screenshots and save to diagnostic directory. + +* Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py: +(OSXBrowserDriver._save_screenshot_to_path): +(OSXBrowserDriver): +(OSXBrowserDriver.diagnose_test_failure): + 2021-12-01 Jonathan Bedard [webkitscmpy] Do not query remotes when determining branches containing commit Modified: trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py (286373 => 286374) --- trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py 2021-12-01 19:14:23 UTC (rev 286373) +++ trunk/Tools/Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py 2021-12-01 19:23:32 UTC (rev 286374) @@ -1,6 +1,7 @@ import logging import os +import shutil import subprocess import time @@ -38,6 +39,36 @@ def close_browsers(self): self._terminate_processes(self.process_name, self.bundle_id) +def _save_screenshot_to_path(self, output_directory, filename): +jpg_image_path = os.path.join(output_directory, filename) +try: +subprocess.call(['screencapture', jpg_image_path]) +_log.info('Saved screenshot to "{}"'.format(jpg_image_path)) +except subprocess.CalledProcessError as error: +_log.error('Failed to save screenshot - Error: {error}'.format(error=error)) + +def diagnose_test_failure(self, diagnose_directory, error): +_log.info('Diagnosing benchmark failure: "{}"'.format(error)) + +if not diagnose_directory: +_log.info('Diagnose directory is not specified, will skip diagnosing.') +return + +if os.path.exists(diagnose_directory): +_log.info('Diagnose directory: "{}" already exists, cleaning it up'.format(diagnose_directory)) +try: +if os.path.isdir(diagnose_directory): +if len(os.listdir(diagnose_directory)): +shutil.rmtree(diagnose_directory) +elif os.path.isfile(diagnose_directory): +os.remove(diagnose_directory) +except Exception as error: +_log.error('Could not remove diagnose directory {} - error: {}'.format(diagnose_directory, error)) +if not os.path.exists(diagnose_directory): +os.makedirs(diagnose_directory) + +self._save_screenshot_to_path(diagnose_directory, 'test-failure-screenshot-{}.jpg'.format(int(time.time( + @classmethod def _launch_process(cls, build_dir, app_name, url, args): if not build_dir: Modified: trunk/Tools/Scripts/webkitpy/benchmark_runner/run_benchmark.py (286373 => 286374) --- trunk/Tools/Scripts/webkitpy/benchmark_runner/run_benchmark.py 2021-12-01 19:14:23 UTC (rev 286373) +++ trunk/Tools/Scripts/webkitpy/benchmark_runner/run_benchmark.py 2021-12-01 19:23:32 UTC (rev 286374) @@ -5,6 +5,7 @@ import logging import os import sys +import time from webkitpy.benchmark_runner.browser_driver.browser_driver_factory import BrowserDriverFactory from webkitpy.benchmark_runner.benchmark_runner import BenchmarkRunner @@ -31,6 +32,10 @@ return 'safari' +def default_diagnose_dir(): +return '/tmp/run-benchmark-diagnostics-{}/'.format(int(time.time())) + + def config_argument_parser(): parser = argparse.ArgumentParser(description='Run browser based performance benchmarks. To run a single benchmark in the recommended way, use run-benchmark --plan. To see the vailable benchmarks, use run-benchmark --list-plans. This script passes t
[webkit-changes] [286373] trunk/Tools
Title: [286373] trunk/Tools Revision 286373 Author jbed...@apple.com Date 2021-12-01 11:14:23 -0800 (Wed, 01 Dec 2021) Log Message [webkitscmpy] Do not query remotes when determining branches containing commit https://bugs.webkit.org/show_bug.cgi?id=233700 Reviewed by Stephanie Lewis. * Scripts/libraries/webkitscmpy/setup.py: Bump version. * Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto. * Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py: (Git.branches_for): Remove -a from --contains check. * Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py: Canonical link: https://commits.webkit.org/244732@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 trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py Diff Modified: trunk/Tools/ChangeLog (286372 => 286373) --- trunk/Tools/ChangeLog 2021-12-01 19:07:25 UTC (rev 286372) +++ trunk/Tools/ChangeLog 2021-12-01 19:14:23 UTC (rev 286373) @@ -1,3 +1,17 @@ +2021-12-01 Jonathan Bedard + +[webkitscmpy] Do not query remotes when determining branches containing commit +https://bugs.webkit.org/show_bug.cgi?id=233700 + + +Reviewed by Stephanie Lewis. + +* Scripts/libraries/webkitscmpy/setup.py: Bump version. +* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto. +* Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py: +(Git.branches_for): Remove -a from --contains check. +* Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py: + 2021-12-01 Tim Horton REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails Modified: trunk/Tools/Scripts/libraries/webkitscmpy/setup.py (286372 => 286373) --- trunk/Tools/Scripts/libraries/webkitscmpy/setup.py 2021-12-01 19:07:25 UTC (rev 286372) +++ trunk/Tools/Scripts/libraries/webkitscmpy/setup.py 2021-12-01 19:14:23 UTC (rev 286373) @@ -29,7 +29,7 @@ setup( name='webkitscmpy', -version='3.0.4', +version='3.0.5', description='Library designed to interact with git and svn repositories.', long_description=readme(), classifiers=[ Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py (286372 => 286373) --- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py 2021-12-01 19:07:25 UTC (rev 286372) +++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py 2021-12-01 19:14:23 UTC (rev 286373) @@ -46,7 +46,7 @@ "Please install webkitcorepy with `pip install webkitcorepy --extra-index-url `" ) -version = Version(3, 0, 4) +version = Version(3, 0, 5) 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 (286372 => 286373) --- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py 2021-12-01 19:07:25 UTC (rev 286372) +++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py 2021-12-01 19:14:23 UTC (rev 286373) @@ -461,7 +461,7 @@ def branches_for(self, hash=None, remote=True): branch = run( -[self.executable(), 'branch', '-a'] + (['--contains', hash] if hash else []), +[self.executable(), 'branch'] + (['--contains', hash] if hash else ['-a']), cwd=self.root_path, capture_output=True, encoding='utf-8', Modified: trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py (286372 => 286373) --- trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py 2021-12-01 19:07:25 UTC (rev 286372) +++ trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py 2021-12-01 19:14:23 UTC (rev 286373) @@ -340,12 +340,12 @@ ) ) if self.find(args[4]) else mocks.ProcessCompletion(returncode=128), ), mocks.Subprocess.Route( -self.executable, 'branch', '-a', '--contains', re.compile(r'.+'), +self.executable, 'branch', '--contains', re.compile(r'.+'), cwd=self.path, generator=lambda *args, **kwargs: mocks.ProcessCompletion( returncode=0, -stdout='\n'.join(sorted(self.branches_on(args[4]))) + '\n', -) if self.find(args[4]) else mocks.ProcessCompletion(returncode=128), +stdout='\n'.join(sorted(self.branches_on(args[3]))) + '\n', +) if self.find(args[3]) else mocks.ProcessCompletion(returncode=128), ), mocks.Subprocess.Route( self.executable, 'checkout', '-b', re.compile(r'.+'), cwd=self.path, ___ webkit-changes mailing list webkit-changes@li
[webkit-changes] [286372] trunk/Source/JavaScriptCore
Title: [286372] trunk/Source/_javascript_Core Revision 286372 Author ysuz...@apple.com Date 2021-12-01 11:07:25 -0800 (Wed, 01 Dec 2021) Log Message Unreviewed, fix CLoop build https://bugs.webkit.org/show_bug.cgi?id=233379 * llint/LowLevelInterpreter64.asm: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286371 => 286372) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-01 19:06:18 UTC (rev 286371) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-01 19:07:25 UTC (rev 286372) @@ -1,3 +1,10 @@ +2021-12-01 Yusuke Suzuki + +Unreviewed, fix CLoop build +https://bugs.webkit.org/show_bug.cgi?id=233379 + +* llint/LowLevelInterpreter64.asm: + 2021-12-01 Xan Lopez [JSC] Fix potential build break related to StructureID.h Modified: trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm (286371 => 286372) --- trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm 2021-12-01 19:06:18 UTC (rev 286371) +++ trunk/Source/_javascript_Core/llint/LowLevelInterpreter64.asm 2021-12-01 19:07:25 UTC (rev 286372) @@ -696,7 +696,8 @@ macro structureIDToStructureWithScratch(structureIDThenStructure, scratch) andq constexpr structureIDMask, structureIDThenStructure -loadp JSCConfig + constexpr (offsetof(Config, startOfStructureHeap)), scratch +leap JSCConfig + constexpr JSC::offsetOfJSCConfigStartOfStructureHeap, scratch +loadp [scratch], scratch addp scratch, structureIDThenStructure end ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286371] trunk/Source/WTF
Title: [286371] trunk/Source/WTF Revision 286371 Author lmo...@igalia.com Date 2021-12-01 11:06:18 -0800 (Wed, 01 Dec 2021) Log Message Unreviewed. Fix -Wformat warning after in ThreadingPosix logging * wtf/posix/ThreadingPOSIX.cpp: (WTF::Thread::establishHandle): Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/posix/ThreadingPOSIX.cpp Diff Modified: trunk/Source/WTF/ChangeLog (286370 => 286371) --- trunk/Source/WTF/ChangeLog 2021-12-01 19:01:35 UTC (rev 286370) +++ trunk/Source/WTF/ChangeLog 2021-12-01 19:06:18 UTC (rev 286371) @@ -1,3 +1,10 @@ +2021-12-01 Lauro Moura + +Unreviewed. Fix -Wformat warning after in ThreadingPosix logging + +* wtf/posix/ThreadingPOSIX.cpp: +(WTF::Thread::establishHandle): + 2021-12-01 J Pascoe Fix NEAR_FIELD macro to support iOS devices again Modified: trunk/Source/WTF/wtf/posix/ThreadingPOSIX.cpp (286370 => 286371) --- trunk/Source/WTF/wtf/posix/ThreadingPOSIX.cpp 2021-12-01 19:01:35 UTC (rev 286370) +++ trunk/Source/WTF/wtf/posix/ThreadingPOSIX.cpp 2021-12-01 19:06:18 UTC (rev 286371) @@ -306,7 +306,7 @@ struct sched_param param = { 0 }; error = pthread_setschedparam(threadHandle, policy | SCHED_RESET_ON_FORK, ¶m); if (error) -LOG_ERROR("Failed to set sched policy %d for thread %d: %s", policy, threadHandle, safeStrerror(error).data()); +LOG_ERROR("Failed to set sched policy %d for thread %ld: %s", policy, threadHandle, safeStrerror(error).data()); } #elif !HAVE(QOS_CLASSES) UNUSED_PARAM(qos); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286370] trunk/Source/WTF
Title: [286370] trunk/Source/WTF Revision 286370 Author j_pas...@apple.com Date 2021-12-01 11:01:35 -0800 (Wed, 01 Dec 2021) Log Message Fix NEAR_FIELD macro to support iOS devices again https://bugs.webkit.org/show_bug.cgi?id=233671 rdar://85318070 In a previous change, https://bugs.webkit.org/show_bug.cgi?id=231085, the definition for the NEAR_FIELD macro removed support for iOS. This change adds it back, fixing NFC webauthn support. Reviewed by Brent Fulgham. Tested manually on an iPhone. * wtf/PlatformHave.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h Diff Modified: trunk/Source/WTF/ChangeLog (286369 => 286370) --- trunk/Source/WTF/ChangeLog 2021-12-01 18:36:08 UTC (rev 286369) +++ trunk/Source/WTF/ChangeLog 2021-12-01 19:01:35 UTC (rev 286370) @@ -1,3 +1,19 @@ +2021-12-01 J Pascoe + +Fix NEAR_FIELD macro to support iOS devices again +https://bugs.webkit.org/show_bug.cgi?id=233671 +rdar://85318070 + +In a previous change, https://bugs.webkit.org/show_bug.cgi?id=231085, the definition for +the NEAR_FIELD macro removed support for iOS. This change adds it back, fixing +NFC webauthn support. + +Reviewed by Brent Fulgham. + +Tested manually on an iPhone. + +* wtf/PlatformHave.h: + 2021-12-01 Philippe Normand [GStreamer] requestVideoFrameCallback support Modified: trunk/Source/WTF/wtf/PlatformHave.h (286369 => 286370) --- trunk/Source/WTF/wtf/PlatformHave.h 2021-12-01 18:36:08 UTC (rev 286369) +++ trunk/Source/WTF/wtf/PlatformHave.h 2021-12-01 19:01:35 UTC (rev 286370) @@ -537,7 +537,7 @@ #define HAVE_COOKIE_CHANGE_LISTENER_API 1 #endif -#if PLATFORM(MAC) && !PLATFORM(IOS_FAMILY_SIMULATOR) +#if PLATFORM(MAC) || (PLATFORM(IOS_FAMILY) && !PLATFORM(IOS_FAMILY_SIMULATOR)) #define HAVE_NEAR_FIELD 1 #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286369] trunk
Title: [286369] trunk Revision 286369 Author ph...@webkit.org Date 2021-12-01 10:36:08 -0800 (Wed, 01 Dec 2021) Log Message [GStreamer] requestVideoFrameCallback support https://bugs.webkit.org/show_bug.cgi?id=233541 Reviewed by Xabier Rodriguez-Calvar. Source/WebCore: Video frames metadata reported by the player is stored in GstBuffers as a new GstMeta. Processing times is tracked in converters and decoders using pad probes. The GStreamer mediastream video capturer is now inserting metadata that includes the capture timestamp in the buffers. The WebRTC incoming and mock sources are wrapping the metadata in the MediaSamples they create. * platform/GStreamer.cmake: * platform/VideoFrameMetadata.h: * platform/graphics/gstreamer/GStreamerCommon.h: (WebCore::fromGstClockTime): * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): (WebCore::MediaPlayerPrivateGStreamer::configureVideoDecoder): (WebCore::MediaPlayerPrivateGStreamer::pushTextureToCompositor): (WebCore::MediaPlayerPrivateGStreamer::flushCurrentBuffer): (WebCore::MediaPlayerPrivateGStreamer::videoFrameMetadata): * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: * platform/graphics/gstreamer/MediaSampleGStreamer.cpp: (WebCore::MediaSampleGStreamer::MediaSampleGStreamer): (WebCore::MediaSampleGStreamer::createImageSample): * platform/graphics/gstreamer/MediaSampleGStreamer.h: (WebCore::MediaSampleGStreamer::create): (WebCore::MediaSampleGStreamer::createImageSample): (WebCore::MediaSampleGStreamer::MediaSampleGStreamer): * platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp: Added. (videoFrameMetadataAPIGetType): (videoFrameMetadataGetInfo): (webkitGstBufferSetVideoSampleMetadata): (webkitGstTraceProcessingTimeForElement): (webkitGstBufferGetVideoFrameMetadata): * platform/graphics/gstreamer/VideoFrameMetadataGStreamer.h: Added. * platform/mediastream/gstreamer/GStreamerCapturer.cpp: (WebCore::GStreamerCapturer::createSource): * platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp: (mediaStreamTrackPrivateGetTags): * platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp: (WebCore::MockRealtimeVideoSourceGStreamer::updateSampleBuffer): * platform/mediastream/libwebrtc/gstreamer/RealtimeIncomingVideoSourceLibWebRTC.cpp: (WebCore::RealtimeIncomingVideoSourceLibWebRTC::OnFrame): * platform/mediastream/libwebrtc/gstreamer/RealtimeIncomingVideoSourceLibWebRTC.h: Source/WTF: * Scripts/Preferences/WebPreferencesExperimental.yaml: Enable rvfc support in GStreamer ports. LayoutTests: * platform/glib/TestExpectations: Update rvfc test expectations. WebRTC-related tests fail mostly because WebRTC encoding/decoding is currently totally broken in WPE/GTK. XR tests shall be handled in a separate patch. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/glib/TestExpectations trunk/Source/WTF/ChangeLog trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/GStreamer.cmake trunk/Source/WebCore/platform/VideoFrameMetadata.h trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h trunk/Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaSampleGStreamer.h trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp trunk/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/RealtimeIncomingVideoSourceLibWebRTC.cpp trunk/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/RealtimeIncomingVideoSourceLibWebRTC.h Added Paths trunk/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.h Diff Modified: trunk/LayoutTests/ChangeLog (286368 => 286369) --- trunk/LayoutTests/ChangeLog 2021-12-01 17:50:30 UTC (rev 286368) +++ trunk/LayoutTests/ChangeLog 2021-12-01 18:36:08 UTC (rev 286369) @@ -1,3 +1,14 @@ +2021-12-01 Philippe Normand + +[GStreamer] requestVideoFrameCallback support +https://bugs.webkit.org/show_bug.cgi?id=233541 + +Reviewed by Xabier Rodriguez-Calvar. + +* platform/glib/TestExpectations: Update rvfc test expectations. WebRTC-related tests fail +mostly because WebRTC encoding/decoding is currently totally broken in WPE/GTK. XR tests +shall be handled in a separate patch. + 2021-12-01 Patrick Griffis CSP: Update URL stripping in reports to match other implementations Modified: trunk/LayoutTests/platform/glib/TestExpectations (286368 => 286369) --- trunk
[webkit-changes] [286368] trunk/Tools
Title: [286368] trunk/Tools Revision 286368 Author timothy_hor...@apple.com Date 2021-12-01 09:50:30 -0800 (Wed, 01 Dec 2021) Log Message REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails https://bugs.webkit.org/show_bug.cgi?id=233689 Reviewed by Simon Fraser. * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: This test asserts that archiving a _WKResourceLoadInfo via NSKeyedArchiver encodes to a particular size (607 bytes). If you look at the resultant plist before r286346, the encoded frameID and resourceLoadID have the same value, and because of NSKeyedArchiver deduplication, share the same object. If you look at the resultant plist *after* r286346, the encoded frameID is one larger than the resourceLoadID, thus cannot be deduplicated, and end up encoding as separate objects. This results in the encoded size increasing to 612 bytes. The reason that the encoded frameID is now one value larger is that ObjectIdentifier uses a global identifier pool, and r286346 creates one more ObjectIdentifier during EventHandler construction, destroying our entirely coincidental ID overlap, and causing the aforementioned encoded size change. Remove this assertion from the test, since it is very aggressive and seems unnecessary. We could instead just rebaseline the test, but it seems insufficiently important to burden some future developer with a repeat of this evening of exploration and discovery. Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm Diff Modified: trunk/Tools/ChangeLog (286367 => 286368) --- trunk/Tools/ChangeLog 2021-12-01 17:45:30 UTC (rev 286367) +++ trunk/Tools/ChangeLog 2021-12-01 17:50:30 UTC (rev 286368) @@ -1,3 +1,34 @@ +2021-12-01 Tim Horton + +REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails +https://bugs.webkit.org/show_bug.cgi?id=233689 + +Reviewed by Simon Fraser. + +* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: +This test asserts that archiving a _WKResourceLoadInfo via NSKeyedArchiver +encodes to a particular size (607 bytes). + +If you look at the resultant plist before r286346, the encoded frameID +and resourceLoadID have the same value, and because of NSKeyedArchiver +deduplication, share the same object. + +If you look at the resultant plist *after* r286346, the encoded frameID +is one larger than the resourceLoadID, thus cannot be deduplicated, and +end up encoding as separate objects. This results in the encoded size +increasing to 612 bytes. + +The reason that the encoded frameID is now one value larger is that +ObjectIdentifier uses a global identifier pool, and r286346 creates +one more ObjectIdentifier during EventHandler construction, destroying +our entirely coincidental ID overlap, and causing the aforementioned +encoded size change. + +Remove this assertion from the test, since it is very aggressive and +seems unnecessary. We could instead just rebaseline the test, but it +seems insufficiently important to burden some future developer with +a repeat of this evening of exploration and discovery. + 2021-12-01 Brady Eidson Add WKWebsiteDataStore configuration option to enable Mock app bundle testing. Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm (286367 => 286368) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm 2021-12-01 17:45:30 UTC (rev 286367) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm 2021-12-01 17:50:30 UTC (rev 286368) @@ -379,7 +379,6 @@ _WKResourceLoadInfo *original = loadInfos[0].get(); NSError *error = nil; NSData *archiveData = [NSKeyedArchiver archivedDataWithRootObject:original requiringSecureCoding:YES error:&error]; -EXPECT_EQ(archiveData.length, 607ull); EXPECT_FALSE(error); _WKResourceLoadInfo *deserialized = [NSKeyedUnarchiver unarchivedObjectOfClass:[_WKResourceLoadInfo class] fromData:archiveData error:&error]; EXPECT_FALSE(error); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286367] trunk/Source/WebKitLegacy/mac
Title: [286367] trunk/Source/WebKitLegacy/mac Revision 286367 Author cdu...@apple.com Date 2021-12-01 09:45:30 -0800 (Wed, 01 Dec 2021) Log Message Regression(r283912) Broke backward compatibility for Swift bindings https://bugs.webkit.org/show_bug.cgi?id=233701 Reviewed by Darin Adler. Rename EpochTimeStamp back to DOMTimeStamp in DOMObject.h & DOMEvent.h since those are API headers and we need to maintain backward compatibility. * DOM/DOMEvent.h: * DOM/DOMEvent.mm: (-[DOMEvent timeStamp]): * DOM/DOMObject.h: Modified Paths trunk/Source/WebKitLegacy/mac/ChangeLog trunk/Source/WebKitLegacy/mac/DOM/DOMEvent.h trunk/Source/WebKitLegacy/mac/DOM/DOMEvent.mm trunk/Source/WebKitLegacy/mac/DOM/DOMObject.h Diff Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (286366 => 286367) --- trunk/Source/WebKitLegacy/mac/ChangeLog 2021-12-01 17:09:44 UTC (rev 286366) +++ trunk/Source/WebKitLegacy/mac/ChangeLog 2021-12-01 17:45:30 UTC (rev 286367) @@ -1,3 +1,19 @@ +2021-12-01 Chris Dumez + +Regression(r283912) Broke backward compatibility for Swift bindings +https://bugs.webkit.org/show_bug.cgi?id=233701 + + +Reviewed by Darin Adler. + +Rename EpochTimeStamp back to DOMTimeStamp in DOMObject.h & DOMEvent.h +since those are API headers and we need to maintain backward compatibility. + +* DOM/DOMEvent.h: +* DOM/DOMEvent.mm: +(-[DOMEvent timeStamp]): +* DOM/DOMObject.h: + 2021-11-24 David Kilzer Compiler should be able to check localized format strings for consistency Modified: trunk/Source/WebKitLegacy/mac/DOM/DOMEvent.h (286366 => 286367) --- trunk/Source/WebKitLegacy/mac/DOM/DOMEvent.h 2021-12-01 17:09:44 UTC (rev 286366) +++ trunk/Source/WebKitLegacy/mac/DOM/DOMEvent.h 2021-12-01 17:45:30 UTC (rev 286367) @@ -43,7 +43,7 @@ @property (readonly) unsigned short eventPhase; @property (readonly) BOOL bubbles; @property (readonly) BOOL cancelable; -@property (readonly) EpochTimeStamp timeStamp; +@property (readonly) DOMTimeStamp timeStamp; @property (readonly, strong) id srcElement WEBKIT_AVAILABLE_MAC(10_6); @property BOOL returnValue WEBKIT_AVAILABLE_MAC(10_6); @property BOOL cancelBubble WEBKIT_AVAILABLE_MAC(10_6); Modified: trunk/Source/WebKitLegacy/mac/DOM/DOMEvent.mm (286366 => 286367) --- trunk/Source/WebKitLegacy/mac/DOM/DOMEvent.mm 2021-12-01 17:09:44 UTC (rev 286366) +++ trunk/Source/WebKitLegacy/mac/DOM/DOMEvent.mm 2021-12-01 17:45:30 UTC (rev 286367) @@ -94,7 +94,7 @@ return IMPL->composed(); } -- (EpochTimeStamp)timeStamp +- (DOMTimeStamp)timeStamp { WebCore::JSMainThreadNullState state; return IMPL->timeStamp().approximateWallTime().secondsSinceEpoch().milliseconds(); Modified: trunk/Source/WebKitLegacy/mac/DOM/DOMObject.h (286366 => 286367) --- trunk/Source/WebKitLegacy/mac/DOM/DOMObject.h 2021-12-01 17:09:44 UTC (rev 286366) +++ trunk/Source/WebKitLegacy/mac/DOM/DOMObject.h 2021-12-01 17:45:30 UTC (rev 286367) @@ -29,7 +29,7 @@ @class DOMStyleSheet; -typedef unsigned long long EpochTimeStamp; +typedef unsigned long long DOMTimeStamp; typedef struct DOMObjectInternal DOMObjectInternal; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286366] trunk/Source/WebCore
Title: [286366] trunk/Source/WebCore Revision 286366 Author wenson_hs...@apple.com Date 2021-12-01 09:09:44 -0800 (Wed, 01 Dec 2021) Log Message Adjust a Live Text quirk so that it applies to YouTube image thumbnails https://bugs.webkit.org/show_bug.cgi?id=233670 Reviewed by Devin Rousso. Augment this existing quirk so that it (1) applies to YouTube as well, and (2) also forces `-webkit-user-drag` to be `auto`. * dom/ImageOverlay.cpp: (WebCore::ImageOverlay::updateSubtree): * page/Quirks.cpp: (WebCore::Quirks::needsToForceUserSelectAndUserDragWhenInstallingImageOverlay const): (WebCore::Quirks::needsToForceUserSelectWhenInstallingImageOverlay const): Deleted. * page/Quirks.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ImageOverlay.cpp trunk/Source/WebCore/page/Quirks.cpp trunk/Source/WebCore/page/Quirks.h Diff Modified: trunk/Source/WebCore/ChangeLog (286365 => 286366) --- trunk/Source/WebCore/ChangeLog 2021-12-01 17:04:27 UTC (rev 286365) +++ trunk/Source/WebCore/ChangeLog 2021-12-01 17:09:44 UTC (rev 286366) @@ -1,3 +1,20 @@ +2021-12-01 Wenson Hsieh + +Adjust a Live Text quirk so that it applies to YouTube image thumbnails +https://bugs.webkit.org/show_bug.cgi?id=233670 + +Reviewed by Devin Rousso. + +Augment this existing quirk so that it (1) applies to YouTube as well, and (2) also forces `-webkit-user-drag` +to be `auto`. + +* dom/ImageOverlay.cpp: +(WebCore::ImageOverlay::updateSubtree): +* page/Quirks.cpp: +(WebCore::Quirks::needsToForceUserSelectAndUserDragWhenInstallingImageOverlay const): +(WebCore::Quirks::needsToForceUserSelectWhenInstallingImageOverlay const): Deleted. +* page/Quirks.h: + 2021-12-01 Antti Koivisto [:has() pseudo-class] Sibling combinator invalidation Modified: trunk/Source/WebCore/dom/ImageOverlay.cpp (286365 => 286366) --- trunk/Source/WebCore/dom/ImageOverlay.cpp 2021-12-01 17:04:27 UTC (rev 286365) +++ trunk/Source/WebCore/dom/ImageOverlay.cpp 2021-12-01 17:09:44 UTC (rev 286366) @@ -351,8 +351,10 @@ elements.blocks.uncheckedAppend(WTFMove(blockContainer)); } -if (document->quirks().needsToForceUserSelectWhenInstallingImageOverlay()) +if (document->quirks().needsToForceUserSelectAndUserDragWhenInstallingImageOverlay()) { element.setInlineStyleProperty(CSSPropertyWebkitUserSelect, CSSValueText); +element.setInlineStyleProperty(CSSPropertyWebkitUserDrag, CSSValueAuto); +} } if (!hadExistingElements) { Modified: trunk/Source/WebCore/page/Quirks.cpp (286365 => 286366) --- trunk/Source/WebCore/page/Quirks.cpp 2021-12-01 17:04:27 UTC (rev 286365) +++ trunk/Source/WebCore/page/Quirks.cpp 2021-12-01 17:09:44 UTC (rev 286366) @@ -1448,7 +1448,7 @@ #if ENABLE(IMAGE_ANALYSIS) -bool Quirks::needsToForceUserSelectWhenInstallingImageOverlay() const +bool Quirks::needsToForceUserSelectAndUserDragWhenInstallingImageOverlay() const { if (!needsQuirks()) return false; @@ -1457,6 +1457,10 @@ if (topPrivatelyControlledDomain(url.host().toString()).startsWith("google.") && url.path() == "/search") return true; +auto host = url.host(); +if (equalLettersIgnoringASCIICase(host, "youtube.com") || host.endsWithIgnoringASCIICase(".youtube.com")) +return true; + return false; } Modified: trunk/Source/WebCore/page/Quirks.h (286365 => 286366) --- trunk/Source/WebCore/page/Quirks.h 2021-12-01 17:04:27 UTC (rev 286365) +++ trunk/Source/WebCore/page/Quirks.h 2021-12-01 17:09:44 UTC (rev 286366) @@ -154,7 +154,7 @@ static bool shouldOmitHTMLDocumentSupportedPropertyNames(); #if ENABLE(IMAGE_ANALYSIS) -bool needsToForceUserSelectWhenInstallingImageOverlay() const; +bool needsToForceUserSelectAndUserDragWhenInstallingImageOverlay() const; #endif private: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286365] trunk
Title: [286365] trunk Revision 286365 Author an...@apple.com Date 2021-12-01 09:04:27 -0800 (Wed, 01 Dec 2021) Log Message [:has() pseudo-class] Sibling combinator invalidation https://bugs.webkit.org/show_bug.cgi?id=233696 Reviewed by Simon Fraser. LayoutTests/imported/w3c: * web-platform-tests/css/selectors/invalidation/has-sibling-expected.txt: Added. * web-platform-tests/css/selectors/invalidation/has-sibling.html: Added. Source/WebCore: Invalidate style correctly for sibling combinators in :has() arguments. Also add new MatchElement::HasSiblingDescendant value used for :has() arguments that match the subject elements siblings descendants, like ':has(~ div .descendant)'. Use it to avoid unnecessary big tree traversals in simple cases. Test: imported/w3c/web-platform-tests/css/selectors/invalidation/has-sibling.html * css/SelectorChecker.cpp: (WebCore::SelectorChecker::matchHasPseudoClass const): Minimal traversals for HasSibling and HasSiblingDescendant. * style/ChildChangeInvalidation.cpp: (WebCore::Style::needsTraversal): (WebCore::Style::needsDescendantTraversal): * style/RuleFeature.cpp: (WebCore::Style::isSiblingOrSubject): (WebCore::Style::isHasPseudoClassMatchElement): (WebCore::Style::computeHasPseudoClassMatchElement): * style/RuleFeature.h: * style/StyleInvalidator.cpp: (WebCore::Style::Invalidator::invalidateStyleWithMatchElement): Invalidation traversal. Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/SelectorChecker.cpp 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-sibling-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-sibling.html Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286364 => 286365) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-01 16:50:06 UTC (rev 286364) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-01 17:04:27 UTC (rev 286365) @@ -1,3 +1,13 @@ +2021-12-01 Antti Koivisto + +[:has() pseudo-class] Sibling combinator invalidation +https://bugs.webkit.org/show_bug.cgi?id=233696 + +Reviewed by Simon Fraser. + +* web-platform-tests/css/selectors/invalidation/has-sibling-expected.txt: Added. +* web-platform-tests/css/selectors/invalidation/has-sibling.html: Added. + 2021-12-01 Patrick Griffis CSP: Update URL stripping in reports to match other implementations Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-sibling-expected.txt (0 => 286365) --- trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-sibling-expected.txt (rev 0) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-sibling-expected.txt 2021-12-01 17:04:27 UTC (rev 286365) @@ -0,0 +1,73 @@ + +PASS initial_color +PASS add .test to first_sibling +PASS remove .test from first_sibling +PASS add .test to second_sibling +PASS remove .test from second_sibling +PASS add .test to third_sibling +PASS remove .test from third_sibling +PASS add .test to first_sibling_child +PASS remove .test from first_sibling_child +PASS add .test to first_sibling_descendant +PASS remove .test from first_sibling_descendant +PASS add .test to third_sibling_child +PASS remove .test from third_sibling_child +PASS add .test to third_sibling_descendant +PASS remove .test from third_sibling_descendant +PASS insert element div.test before first_sibling +PASS remove element div.test before first_sibling +PASS insert element div.test before second_sibling +PASS remove element div.test before second_sibling +PASS insert element div.test before third_sibling +PASS remove element div.test before third_sibling +PASS insert element div.test before first_sibling_child +PASS remove element div.test before first_sibling_child +PASS insert element div.test before first_sibling_descendant +PASS remove element div.test before first_sibling_descendant +PASS insert element div.test before third_sibling_child +PASS remove element div.test before third_sibling_child +PASS insert element div.test before third_sibling_descendant +PASS remove element div.test before third_sibling_descendant +PASS insert element div.test after first_sibling +PASS remove element div.test after first_sibling +PASS insert element div.test after second_sibling +PASS remove element div.test after second_sibling +PASS insert element div.test after third_sibling +PASS remove element div.test after third_sibling +PASS insert element div.test after first_sibling_child +PASS remove element div.test after first_sibling_child +PASS insert element div.test after first_sibling_descendant +PASS remove element div.test after first_sib
[webkit-changes] [286364] trunk/Source/WebCore
Title: [286364] trunk/Source/WebCore Revision 286364 Author you...@apple.com Date 2021-12-01 08:50:06 -0800 (Wed, 01 Dec 2021) Log Message Add a features.json entry to requestVideoFrameCallback https://bugs.webkit.org/show_bug.cgi?id=233690 Reviewed by Eric Carlson. No change of behavior. * features.json: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/features.json Diff Modified: trunk/Source/WebCore/ChangeLog (286363 => 286364) --- trunk/Source/WebCore/ChangeLog 2021-12-01 16:41:12 UTC (rev 286363) +++ trunk/Source/WebCore/ChangeLog 2021-12-01 16:50:06 UTC (rev 286364) @@ -1,3 +1,14 @@ +2021-12-01 Youenn Fablet + +Add a features.json entry to requestVideoFrameCallback +https://bugs.webkit.org/show_bug.cgi?id=233690 + +Reviewed by Eric Carlson. + +No change of behavior. + +* features.json: + 2021-12-01 Patrick Griffis CSP: Update URL stripping in reports to match other implementations Modified: trunk/Source/WebCore/features.json (286363 => 286364) --- trunk/Source/WebCore/features.json 2021-12-01 16:41:12 UTC (rev 286363) +++ trunk/Source/WebCore/features.json 2021-12-01 16:50:06 UTC (rev 286364) @@ -1565,6 +1565,16 @@ "webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=164193", "keywords": ["requestIdleCallback", "idle callback"], "description": "An API that can be used to cooperatively schedule background tasks." +}, +{ +"name": "requestVideoFrameCallback", +"status": { +"status": "In Development" +}, +"url": "https://wicg.github.io/video-rvfc/", +"webkit-url": "https://bugs.webkit.org/show_bug.cgi?id=211945", +"keywords": ["requestVideoFrameCallback", "rvfc"], +"description": "An API that can be used on a HTMLMediaElement to do per video frame processing." } ] } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286363] trunk
Title: [286363] trunk Revision 286363 Author pgrif...@igalia.com Date 2021-12-01 08:41:12 -0800 (Wed, 01 Dec 2021) Log Message CSP: Update URL stripping in reports to match other implementations https://bugs.webkit.org/show_bug.cgi?id=233135 Reviewed by Kate Cheney. LayoutTests/imported/w3c: Update tests as passing. * web-platform-tests/content-security-policy/generic/directive-name-case-insensitive.sub-expected.txt: * web-platform-tests/content-security-policy/media-src/media-src-7_1_2.sub-expected.txt: * web-platform-tests/content-security-policy/media-src/media-src-7_2_2.sub-expected.txt: * web-platform-tests/content-security-policy/media-src/media-src-blocked.sub-expected.txt: * web-platform-tests/content-security-policy/reporting/report-original-url.sub-expected.txt: * web-platform-tests/content-security-policy/reporting/report-strips-fragment-expected.txt: * web-platform-tests/content-security-policy/securitypolicyviolation/securitypolicyviolation-block-cross-origin-image.sub-expected.txt: Source/WebCore: * page/csp/ContentSecurityPolicy.cpp: (WebCore::ContentSecurityPolicy::createURLForReporting const): (WebCore::ContentSecurityPolicy::reportViolation const): (WebCore::ContentSecurityPolicy::deprecatedURLForReporting const): Deleted. * page/csp/ContentSecurityPolicy.h: LayoutTests: Remove skipped tests that now pass. Change CSP tests to expect full URLs. * TestExpectations: * http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt: * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-expected.txt: * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script-expected.txt: * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script.html: * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image.html: * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-https-expected.txt: * http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt: * http/wpt/fetch/csp-reports-bypass-csp-checks.html: * platform/glib/imported/w3c/web-platform-tests/content-security-policy/media-src/media-src-7_1_2.sub-expected.txt: Added. * platform/glib/imported/w3c/web-platform-tests/content-security-policy/media-src/media-src-7_2_2.sub-expected.txt: Added. * platform/glib/imported/w3c/web-platform-tests/content-security-policy/media-src/media-src-blocked.sub-expected.txt: Added. * platform/glib/imported/w3c/web-platform-tests/content-security-policy/media-src/media-src-redir-bug.sub-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-expected.txt trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script-expected.txt trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script.html trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image.html trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-https-expected.txt trunk/LayoutTests/http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt trunk/LayoutTests/http/wpt/fetch/csp-reports-bypass-csp-checks.html trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/content-security-policy/generic/directive-name-case-insensitive.sub-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/content-security-policy/media-src/media-src-7_1_2.sub-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/content-security-policy/media-src/media-src-7_2_2.sub-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/content-security-policy/media-src/media-src-blocked.sub-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/content-security-policy/reporting/report-original-url.sub-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/content-security-policy/reporting/report-strips-fragment-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/content-security-policy/securitypolicyviolation/securitypolicyviolation-block-cross-origin-image.sub-expected.txt trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/content-security-policy/media-src/media-src-redir-bug.sub-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/csp/ContentSecurityPolicy.cpp trunk/Source/WebCore/page/csp/ContentSecurityPolicy.h Added Paths trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/co
[webkit-changes] [286362] trunk/LayoutTests
Title: [286362] trunk/LayoutTests Revision 286362 Author commit-qu...@webkit.org Date 2021-12-01 07:47:44 -0800 (Wed, 01 Dec 2021) Log Message imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window.html is no longer failing – remove expectations https://bugs.webkit.org/show_bug.cgi?id=233664 Patch by Andreu Botella on 2021-12-01 Reviewed by Chris Dumez. LayoutTests/imported/w3c: * web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window-expected.txt: Updated to match the current test output. LayoutTests: * TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (286361 => 286362) --- trunk/LayoutTests/ChangeLog 2021-12-01 13:36:58 UTC (rev 286361) +++ trunk/LayoutTests/ChangeLog 2021-12-01 15:47:44 UTC (rev 286362) @@ -1,3 +1,12 @@ +2021-12-01 Andreu Botella + +imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window.html is no longer failing – remove expectations +https://bugs.webkit.org/show_bug.cgi?id=233664 + +Reviewed by Chris Dumez. + +* TestExpectations: + 2021-12-01 Youenn Fablet Reuse navigation preload if service worker is fetching the corresponding navigation request Modified: trunk/LayoutTests/TestExpectations (286361 => 286362) --- trunk/LayoutTests/TestExpectations 2021-12-01 13:36:58 UTC (rev 286361) +++ trunk/LayoutTests/TestExpectations 2021-12-01 15:47:44 UTC (rev 286362) @@ -848,7 +848,6 @@ imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html [ Failure Pass ] imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window.html [ Failure Pass ] imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom-part-2.window.html [ Failure Pass ] -imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window.html [ Failure Pass ] imported/w3c/web-platform-tests/content-security-policy/reporting-api/reporting-api-works-on-frame-ancestors.https.sub.html [ Failure Pass ] imported/w3c/web-platform-tests/user-timing/clearMarks.html [ Failure Pass ] imported/w3c/web-platform-tests/user-timing/mark.html [ Failure Pass ] Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286361 => 286362) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-01 13:36:58 UTC (rev 286361) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-01 15:47:44 UTC (rev 286362) @@ -1,3 +1,13 @@ +2021-12-01 Andreu Botella + +imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window.html is no longer failing – remove expectations +https://bugs.webkit.org/show_bug.cgi?id=233664 + +Reviewed by Chris Dumez. + +* web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window-expected.txt: +Updated to match the current test output. + 2021-11-30 Chris Dumez html/semantics/forms/constraints/form-validation-validity-customError.html WPT test is failing Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window-expected.txt (286361 => 286362) --- trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window-expected.txt 2021-12-01 13:36:58 UTC (rev 286361) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/multipart-formdata.window-expected.txt 2021-12-01 15:47:44 UTC (rev 286362) @@ -1,62 +1,62 @@ PASS multipart/form-data: Basic test (normal form) -FAIL multipart/form-data: Basic test (formdata event) assert_equals: expected "--WebKitFormBoundarynjiR7TaBakpm0h1K--\r\nContent-Disposition: form-data; name=\"basic\"\r\n\r\ntest\r\n--WebKitFormBoundarynjiR7TaBakpm0h1K\r\n" but got "--WebKitFormBoundarynjiR7TaBakpm0h1K--\r\n" +PASS multipart/form-data: Basic test (formdata event) PASS multipart/form-data: Basic File test (normal form) -FAIL multipart/form-data: Basic File test (formdata event) assert_equals: expected "--WebKitFormBoundaryNRn1GiAW66Uilr5X--\r\nContent-Disposition: form-data; name=\"basic\"; filename=\"file-test.txt\"\r\nContent-Type: text/plain\r\n\r\n\r\n--WebKitFormBoundaryNRn1GiAW66Uilr5X\r\n" but got "--WebKitFormBoundaryNRn1GiAW66Uilr5X--\r\n" +PASS multipart/form-data: Basic File test (formdata event) PASS multipart/form-data: 0x00 in name (normal form) -FAIL multipart/form-data: 0x00 in name (formdata event) assert_equals: expected "--WebKitFormBou
[webkit-changes] [286361] trunk
Title: [286361] trunk Revision 286361 Author you...@apple.com Date 2021-12-01 05:36:58 -0800 (Wed, 01 Dec 2021) Log Message Reuse navigation preload if service worker is fetching the corresponding navigation request https://bugs.webkit.org/show_bug.cgi?id=233490 Reviewed by Chris Dumez. Source/WebCore: Store the fetch identifier in FetchRequest as this might be used as the navigation preload identifier. We set it when creating a FetchRequest for firing a fetch event. This identifier is kept in case of request cloning or when creating a request as part of calling fetch. It is used to set the navigationPreloadIdentifier in ResourceLoaderOptions that is piped to WebLoaderStrategy. Test: http/wpt/service-workers/fetch-service-worker-preload.https.html * Modules/fetch/FetchLoader.cpp: * Modules/fetch/FetchRequest.cpp: * Modules/fetch/FetchRequest.h: * loader/ResourceLoaderOptions.h: * loader/ThreadableLoader.cpp: * workers/service/context/ServiceWorkerFetch.cpp: * workers/service/context/ServiceWorkerFetch.h: * workers/service/context/ServiceWorkerThread.cpp: * workers/service/context/ServiceWorkerThread.h: * workers/service/context/ServiceWorkerThreadProxy.cpp: Source/WebKit: Store navigation preloader in NetworkSession, keyed by the corresponding fetch identifier. When a navigation request is coming from fetch with the corresponding navigation preload identifier we look at ongoing preloads and use it if available to answer the fetch. To do so, we create a new ServiceWorkerFetchTask that will take the preloader of the initial ServiceWorkerFetchTask. * NetworkProcess/NetworkResourceLoadParameters.cpp: * NetworkProcess/NetworkResourceLoadParameters.h: * NetworkProcess/NetworkSession.cpp: * NetworkProcess/NetworkSession.h: * NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp: * NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h: * NetworkProcess/ServiceWorker/WebSWServerConnection.cpp: * WebProcess/Network/WebLoaderStrategy.cpp: LayoutTests: * http/wpt/service-workers/fetch-service-worker-preload-worker.js: Added. * http/wpt/service-workers/fetch-service-worker-preload.https-expected.txt: Added. * http/wpt/service-workers/fetch-service-worker-preload.https.html: Added. * http/wpt/service-workers/resources/fetch-service-worker-preload-script.py: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/fetch/FetchLoader.cpp trunk/Source/WebCore/Modules/fetch/FetchRequest.cpp trunk/Source/WebCore/Modules/fetch/FetchRequest.h trunk/Source/WebCore/loader/ResourceLoaderOptions.h trunk/Source/WebCore/loader/ThreadableLoader.cpp trunk/Source/WebCore/workers/service/context/ServiceWorkerFetch.cpp trunk/Source/WebCore/workers/service/context/ServiceWorkerFetch.h trunk/Source/WebCore/workers/service/context/ServiceWorkerThread.cpp trunk/Source/WebCore/workers/service/context/ServiceWorkerThread.h trunk/Source/WebCore/workers/service/context/ServiceWorkerThreadProxy.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkResourceLoadParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkResourceLoadParameters.h trunk/Source/WebKit/NetworkProcess/NetworkSession.cpp trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h trunk/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp trunk/Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp Added Paths trunk/LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-worker.js trunk/LayoutTests/http/wpt/service-workers/fetch-service-worker-preload.https-expected.txt trunk/LayoutTests/http/wpt/service-workers/fetch-service-worker-preload.https.html trunk/LayoutTests/http/wpt/service-workers/resources/fetch-service-worker-preload-script.py Diff Modified: trunk/LayoutTests/ChangeLog (286360 => 286361) --- trunk/LayoutTests/ChangeLog 2021-12-01 12:45:42 UTC (rev 286360) +++ trunk/LayoutTests/ChangeLog 2021-12-01 13:36:58 UTC (rev 286361) @@ -1,3 +1,15 @@ +2021-12-01 Youenn Fablet + +Reuse navigation preload if service worker is fetching the corresponding navigation request +https://bugs.webkit.org/show_bug.cgi?id=233490 + +Reviewed by Chris Dumez. + +* http/wpt/service-workers/fetch-service-worker-preload-worker.js: Added. +* http/wpt/service-workers/fetch-service-worker-preload.https-expected.txt: Added. +* http/wpt/service-workers/fetch-service-worker-preload.https.html: Added. +* http/wpt/service-workers/resources/fetch-service-worker-preload-script.py: Added. + 2021-11-30 Robert Jenner REBASELINE [ Monterey ]fast/css/continuationCrash.html (layout-test) is a constant text failure Added: trunk/LayoutTests/http/wpt/service-workers/fetch-service-worker-preload-worker.js (0 => 286361) --- trunk/LayoutTests/http/wpt/service-workers
[webkit-changes] [286360] trunk/Source/JavaScriptCore
Title: [286360] trunk/Source/_javascript_Core Revision 286360 Author commit-qu...@webkit.org Date 2021-12-01 04:45:42 -0800 (Wed, 01 Dec 2021) Log Message [JSC] Fix potential build break related to StructureID.h https://bugs.webkit.org/show_bug.cgi?id=233693 Patch by Xan Lopez on 2021-12-01 Reviewed by Adrian Perez de Castro. * runtime/StructureID.h: include StdIntExtras.h for CPURegister. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/StructureID.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286359 => 286360) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-01 12:27:37 UTC (rev 286359) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-01 12:45:42 UTC (rev 286360) @@ -1,5 +1,14 @@ 2021-12-01 Xan Lopez +[JSC] Fix potential build break related to StructureID.h +https://bugs.webkit.org/show_bug.cgi?id=233693 + +Reviewed by Adrian Perez de Castro. + +* runtime/StructureID.h: include StdIntExtras.h for CPURegister. + +2021-12-01 Xan Lopez + [JSC] Remove debug print left over from previous patch https://bugs.webkit.org/show_bug.cgi?id=233692 Modified: trunk/Source/_javascript_Core/runtime/StructureID.h (286359 => 286360) --- trunk/Source/_javascript_Core/runtime/StructureID.h 2021-12-01 12:27:37 UTC (rev 286359) +++ trunk/Source/_javascript_Core/runtime/StructureID.h 2021-12-01 12:45:42 UTC (rev 286360) @@ -26,6 +26,7 @@ #pragma once #include "JSCConfig.h" +#include namespace JSC { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286359] trunk/Source/WebKit
Title: [286359] trunk/Source/WebKit Revision 286359 Author you...@apple.com Date 2021-12-01 04:27:37 -0800 (Wed, 01 Dec 2021) Log Message WebSWServerConnection::createFetchTask does not need to query twice for a registration https://bugs.webkit.org/show_bug.cgi?id=233467 Reviewed by Chris Dumez. Instead of searching for a worker and then searching for a registration, we now search for a registration and, if not null, directly get its active worker. This makes it clear the registration is not null in follow-up code and removes a redundant query. No change of behavior, this is a refactoring. * NetworkProcess/ServiceWorker/WebSWServerConnection.cpp: (WebKit::WebSWServerConnection::createFetchTask): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (286358 => 286359) --- trunk/Source/WebKit/ChangeLog 2021-12-01 10:56:22 UTC (rev 286358) +++ trunk/Source/WebKit/ChangeLog 2021-12-01 12:27:37 UTC (rev 286359) @@ -1,3 +1,19 @@ +2021-12-01 Youenn Fablet + +WebSWServerConnection::createFetchTask does not need to query twice for a registration +https://bugs.webkit.org/show_bug.cgi?id=233467 + +Reviewed by Chris Dumez. + +Instead of searching for a worker and then searching for a registration, +we now search for a registration and, if not null, directly get its active worker. +This makes it clear the registration is not null in follow-up code and removes a redundant query. + +No change of behavior, this is a refactoring. + +* NetworkProcess/ServiceWorker/WebSWServerConnection.cpp: +(WebKit::WebSWServerConnection::createFetchTask): + 2021-12-01 Brady Eidson Add WKWebsiteDataStore configuration option to enable Mock app bundle testing. Modified: trunk/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp (286358 => 286359) --- trunk/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp 2021-12-01 10:56:22 UTC (rev 286358) +++ trunk/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp 2021-12-01 12:27:37 UTC (rev 286359) @@ -177,15 +177,15 @@ serviceWorkerRegistrationIdentifier = *loader.parameters().serviceWorkerRegistrationIdentifier; } -auto* worker = server().activeWorkerFromRegistrationID(*serviceWorkerRegistrationIdentifier); +auto* registration = server().getRegistration(*serviceWorkerRegistrationIdentifier); +auto* worker = registration ? registration->activeWorker() : nullptr; if (!worker) { SWSERVERCONNECTION_RELEASE_LOG_ERROR("startFetch: DidNotHandle because no active worker for registration %" PRIu64, serviceWorkerRegistrationIdentifier->toUInt64()); return nullptr; } -auto* registration = server().getRegistration(*serviceWorkerRegistrationIdentifier); if (worker->shouldSkipFetchEvent()) { -if (registration && registration->shouldSoftUpdate(loader.parameters().options)) +if (registration->shouldSoftUpdate(loader.parameters().options)) registration->scheduleSoftUpdate(loader.isAppInitiated() ? WebCore::IsAppInitiated::Yes : WebCore::IsAppInitiated::No); return nullptr; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286358] trunk/Source/WebCore
Title: [286358] trunk/Source/WebCore Revision 286358 Author eoca...@igalia.com Date 2021-12-01 02:56:22 -0800 (Wed, 01 Dec 2021) Log Message [MSE][WPE] Parameterize maximum buffer size using the MSE_MAX_BUFFER_SIZE env var https://bugs.webkit.org/show_bug.cgi?id=233495 Reviewed by Xabier Rodriguez-Calvar. The current MSE policy of SourceBuffers taking all the available system memory until the MemoryPressureHandler complains may work fine for a typical desktop system, when caching is preferred over memory footprint. However, memory is scarce on embedded systems and WebKit may compete with other software for memory resources. In that scenario, the embedder may prefer to restrict the amount of memory available for each kind of SourceBuffer (audio, video, text). For that purpose, the MSE_MAX_BUFFER_SIZE environment variable is honored. It has the following syntax: Case insensitive, full type (audio, video, text), compact type (a, v, t), wildcard (*), unit multipliers (M=Mb, K=Kb, =bytes). Examples: MSE_MAX_BUFFER_SIZE='V:50M,audio:12k,TeXT:500K' MSE_MAX_BUFFER_SIZE='*:100M' MSE_MAX_BUFFER_SIZE='video:90M,T:10' * Modules/mediasource/SourceBuffer.cpp: Honor platform imposed buffer size restrictions with higher priority (if present) than the element ones. * platform/graphics/SourceBufferPrivate.h: Added platformMaximumBufferSize() default implementation that sets no buffer size restrictions. * platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp: Read the MSE_MAX_BUFFER_SIZE environment variable and compute the maximum buffer size if the size is specified in the variable for all the track types present in the SourceBufferPrivate. Otherwise, use the default size. * platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h: Override default platformMaximumBufferSize() implementation. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp trunk/Source/WebCore/platform/graphics/SourceBufferPrivate.h trunk/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h Diff Modified: trunk/Source/WebCore/ChangeLog (286357 => 286358) --- trunk/Source/WebCore/ChangeLog 2021-12-01 10:53:40 UTC (rev 286357) +++ trunk/Source/WebCore/ChangeLog 2021-12-01 10:56:22 UTC (rev 286358) @@ -1,3 +1,30 @@ +2021-12-01 Enrique Ocaña González + +[MSE][WPE] Parameterize maximum buffer size using the MSE_MAX_BUFFER_SIZE env var +https://bugs.webkit.org/show_bug.cgi?id=233495 + +Reviewed by Xabier Rodriguez-Calvar. + +The current MSE policy of SourceBuffers taking all the available system memory until the MemoryPressureHandler +complains may work fine for a typical desktop system, when caching is preferred over memory footprint. However, +memory is scarce on embedded systems and WebKit may compete with other software for memory resources. In that +scenario, the embedder may prefer to restrict the amount of memory available for each kind of SourceBuffer +(audio, video, text). + +For that purpose, the MSE_MAX_BUFFER_SIZE environment variable is honored. It has the following syntax: Case +insensitive, full type (audio, video, text), compact type (a, v, t), wildcard (*), unit multipliers (M=Mb, +K=Kb, =bytes). Examples: + + MSE_MAX_BUFFER_SIZE='V:50M,audio:12k,TeXT:500K' + MSE_MAX_BUFFER_SIZE='*:100M' + MSE_MAX_BUFFER_SIZE='video:90M,T:10' + +* Modules/mediasource/SourceBuffer.cpp: Honor platform imposed buffer size restrictions with higher priority (if present) than the element ones. +* platform/graphics/SourceBufferPrivate.h: Added platformMaximumBufferSize() default implementation that sets no buffer size restrictions. +* platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp: Read the MSE_MAX_BUFFER_SIZE environment variable and compute the maximum buffer +size if the size is specified in the variable for all the track types present in the SourceBufferPrivate. Otherwise, use the default size. +* platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h: Override default platformMaximumBufferSize() implementation. + 2021-11-30 Simon Fraser Pass the timestamp for scrolling thread animations through all the serviceScrollAnimation() calls Modified: trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp (286357 => 286358) --- trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp 2021-12-01 10:53:40 UTC (rev 286357) +++ trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp 2021-12-01 10:56:22 UTC (rev 286358) @@ -630,6 +630,10 @@ if (!element) return 0; +size_t platformMaximumBufferSize = m_private->platformMaximumBufferSize(); +if (platformMaximumBufferSize) +return platformMaximumBufferSize; + return element-
[webkit-changes] [286357] trunk/Source/WTF
Title: [286357] trunk/Source/WTF Revision 286357 Author mrobin...@webkit.org Date 2021-12-01 02:53:40 -0800 (Wed, 01 Dec 2021) Log Message Add a runtime flag to enable CSS Transforms Level 2 spec compliant behavior https://bugs.webkit.org/show_bug.cgi?id=232618 Reviewed by Simon Fraser. * Scripts/Preferences/WebPreferencesExperimental.yaml: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml Diff Modified: trunk/Source/WTF/ChangeLog (286356 => 286357) --- trunk/Source/WTF/ChangeLog 2021-12-01 10:44:19 UTC (rev 286356) +++ trunk/Source/WTF/ChangeLog 2021-12-01 10:53:40 UTC (rev 286357) @@ -1,3 +1,12 @@ +2021-12-01 Martin Robinson + +Add a runtime flag to enable CSS Transforms Level 2 spec compliant behavior +https://bugs.webkit.org/show_bug.cgi?id=232618 + +Reviewed by Simon Fraser. + +* Scripts/Preferences/WebPreferencesExperimental.yaml: + 2021-11-30 Tim Horton Add a momentum event synthesizer Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (286356 => 286357) --- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml 2021-12-01 10:44:19 UTC (rev 286356) +++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml 2021-12-01 10:53:40 UTC (rev 286357) @@ -164,6 +164,18 @@ WebKit: default: false +CSS3DTransformInteroperabilityEnabled: + type: bool + humanReadableName: "CSS 3D Transform Interoperability" + humanReadableDescription: "Enable 3D transform behavior that is specification-compliant but backwards incompatible" + defaultValue: +WebKitLegacy: + default: false +WebKit: + default: false +WebCore: + default: false + CSSCascadeLayersEnabled: type: bool humanReadableName: "CSS Cascade Layers" ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286356] trunk/Source/JavaScriptCore
Title: [286356] trunk/Source/_javascript_Core Revision 286356 Author commit-qu...@webkit.org Date 2021-12-01 02:44:19 -0800 (Wed, 01 Dec 2021) Log Message [JSC] Remove debug print left over from previous patch https://bugs.webkit.org/show_bug.cgi?id=233692 Unreviewed follow-up patch. Patch by Xan Lopez on 2021-12-01 * offlineasm/x86.rb: remove debug print. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/offlineasm/x86.rb Diff Modified: trunk/Source/_javascript_Core/ChangeLog (286355 => 286356) --- trunk/Source/_javascript_Core/ChangeLog 2021-12-01 09:07:47 UTC (rev 286355) +++ trunk/Source/_javascript_Core/ChangeLog 2021-12-01 10:44:19 UTC (rev 286356) @@ -1,3 +1,12 @@ +2021-12-01 Xan Lopez + +[JSC] Remove debug print left over from previous patch +https://bugs.webkit.org/show_bug.cgi?id=233692 + +Unreviewed follow-up patch. + +* offlineasm/x86.rb: remove debug print. + 2021-11-30 Mark Lam Move Subspaces from VM to Heap. Modified: trunk/Source/_javascript_Core/offlineasm/x86.rb (286355 => 286356) --- trunk/Source/_javascript_Core/offlineasm/x86.rb 2021-12-01 09:07:47 UTC (rev 286355) +++ trunk/Source/_javascript_Core/offlineasm/x86.rb 2021-12-01 10:44:19 UTC (rev 286356) @@ -447,7 +447,6 @@ else $asm.puts "lea #{dst.x86Operand(:ptr)}, #{asmLabel}" end -print("#{offsetRegister(offset, dst.x86Operand(:ptr))}\n") offsetRegister(offset, dst.x86Operand(:ptr)) end end ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286355] trunk
Title: [286355] trunk Revision 286355 Author beid...@apple.com Date 2021-12-01 01:07:47 -0800 (Wed, 01 Dec 2021) Log Message Add WKWebsiteDataStore configuration option to enable Mock app bundle testing. https://bugs.webkit.org/show_bug.cgi?id=233679 Reviewed by Tim Horton. Source/WebKit: Covered by API tests. We're about to land actual implementations of app permissions bundles. But the mock bundles still have a place for testing. We need a way to switch between Mock and Native. This patch takes the opportunity to plumb out a WebPushDaemonConnectionConfiguration object that can easily be augmented in future patches to add new options without messing with messaging directly. * NetworkProcess/NetworkSession.h: (WebKit::NetworkSession::webpushdUsesMockBundlesForTesting const): * NetworkProcess/NetworkSessionCreationParameters.cpp: (WebKit::NetworkSessionCreationParameters::encode const): (WebKit::NetworkSessionCreationParameters::decode): * NetworkProcess/NetworkSessionCreationParameters.h: * NetworkProcess/Notifications/NetworkNotificationManager.cpp: (WebKit::NetworkNotificationManager::maybeSendConnectionConfiguration const): (WebKit::NetworkNotificationManager::sendMessage const): (WebKit::NetworkNotificationManager::sendMessageWithReply const): (WebKit::NetworkNotificationManager::maybeSendHostAppAuditToken const): Deleted. * NetworkProcess/Notifications/NetworkNotificationManager.h: * NetworkProcess/cocoa/NetworkSessionCocoa.h: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::NetworkSessionCocoa): * Shared/WebPushDaemonConnectionConfiguration.h: Copied from Source/WebKit/Shared/WebPushDaemonConstants.h. (WebKit::WebPushD::WebPushDaemonConnectionConfiguration::encode const): (WebKit::WebPushD::WebPushDaemonConnectionConfiguration::decode): * Shared/WebPushDaemonConstants.h: (WebKit::WebPushD::messageTypeSendsReply): * UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h: * UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm: (-[_WKWebsiteDataStoreConfiguration webpushdUsesMockBundlesForTesting]): (-[_WKWebsiteDataStoreConfiguration setWebpushdUsesMockBundlesForTesting:]): * UIProcess/WebsiteData/WebsiteDataStore.cpp: (WebKit::WebsiteDataStore::parameters): * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp: (WebKit::WebsiteDataStoreConfiguration::copy const): (WebKit::WebsiteDataStoreConfiguration::webPushDaemonConnectionConfiguration const): * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h: (WebKit::WebsiteDataStoreConfiguration::webpushdUsesMockBundlesForTesting const): (WebKit::WebsiteDataStoreConfiguration::setWebpushdUsesMockBundlesForTesting): * WebKit.xcodeproj/project.pbxproj: * webpushd/AppBundleRequest.mm: (WebPushD::AppBundleRequest::AppBundleRequest): (WebPushD::AppBundleRequest::start): * webpushd/PushClientConnection.h: (WebPushD::ClientConnection::hasHostAppAuditToken const): (WebPushD::ClientConnection::useMockBundlesForTesting const): * webpushd/PushClientConnection.mm: (WebPushD::ClientConnection::updateConnectionConfiguration): (WebPushD::ClientConnection::setHostAppAuditTokenData): * webpushd/WebPushDaemon.h: * webpushd/WebPushDaemon.mm: (WebPushD::Daemon::decodeAndHandleMessage): (WebPushD::Daemon::getOriginsWithPushAndNotificationPermissions): (WebPushD::Daemon::setDebugModeIsEnabled): (WebPushD::Daemon::updateConnectionConfiguration): (WebPushD::Daemon::setHostAppAuditToken): Deleted. Tools: * TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.cpp trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm trunk/Source/WebKit/Shared/WebPushDaemonConstants.h trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj trunk/Source/WebKit/webpushd/AppBundleRequest.mm trunk/Source/WebKit/webpushd/PushClientConnection.h trunk/Source/WebKit/webpushd/PushClientConnection.mm trunk/Source/WebKit/webpushd/WebPushDaemon.h trunk/Source/WebKit/webpushd/WebPushDaemon.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm Added Paths trunk/Source/WebKit/Shared/WebPushDaemonConnectionConfiguration.h Diff Modified: trunk/Source/WebKit/ChangeLog (286354 => 286355) --- trunk/Source
[webkit-changes] [286354] trunk/Source/WebKit
Title: [286354] trunk/Source/WebKit Revision 286354 Author lmo...@igalia.com Date 2021-12-01 00:21:48 -0800 (Wed, 01 Dec 2021) Log Message [GTK][GTK4][WebDriver] Flaky crashes exiting many prompty-related webdriver tests https://bugs.webkit.org/show_bug.cgi?id=233505 Reviewed by Carlos Garcia Campos. Covered by existing tests. When building for GTK4, upon dialog closure the dialog widgets might be removed with `webkitWebViewDialogSetChild(dialog, NULL)` while the button is still registered as the default widget of the toplevel. This commit makes sure we don't have a default widget while the dialog is unmapped, to mirror the map() behavior. * UIProcess/API/gtk/WebKitScriptDialogImpl.cpp: (webkitScriptDialogImplUnmap): Added to unset the default widget. (webkit_script_dialog_impl_class_init): Register unmap callback. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/gtk/WebKitScriptDialogImpl.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (286353 => 286354) --- trunk/Source/WebKit/ChangeLog 2021-12-01 07:43:30 UTC (rev 286353) +++ trunk/Source/WebKit/ChangeLog 2021-12-01 08:21:48 UTC (rev 286354) @@ -1,3 +1,23 @@ +2021-12-01 Lauro Moura + +[GTK][GTK4][WebDriver] Flaky crashes exiting many prompty-related webdriver tests +https://bugs.webkit.org/show_bug.cgi?id=233505 + +Reviewed by Carlos Garcia Campos. + +Covered by existing tests. + +When building for GTK4, upon dialog closure the dialog widgets might +be removed with `webkitWebViewDialogSetChild(dialog, NULL)` while +the button is still registered as the default widget of the toplevel. + +This commit makes sure we don't have a default widget while the +dialog is unmapped, to mirror the map() behavior. + +* UIProcess/API/gtk/WebKitScriptDialogImpl.cpp: +(webkitScriptDialogImplUnmap): Added to unset the default widget. +(webkit_script_dialog_impl_class_init): Register unmap callback. + 2021-11-30 Antoine Quint replace-webkit-additions-includes should assume unknown or empty deployment targets are supported Modified: trunk/Source/WebKit/UIProcess/API/gtk/WebKitScriptDialogImpl.cpp (286353 => 286354) --- trunk/Source/WebKit/UIProcess/API/gtk/WebKitScriptDialogImpl.cpp 2021-12-01 07:43:30 UTC (rev 286353) +++ trunk/Source/WebKit/UIProcess/API/gtk/WebKitScriptDialogImpl.cpp 2021-12-01 08:21:48 UTC (rev 286354) @@ -74,6 +74,20 @@ } #endif +#if USE(GTK4) +static void webkitScriptDialogImplUnmap(GtkWidget* widget) +{ +if (!gtk_widget_get_mapped(widget)) +return; + +auto* toplevel = gtk_widget_get_toplevel(GTK_WIDGET(widget)); +if (WebCore::widgetIsOnscreenToplevelWindow(toplevel)) +gtk_window_set_default(GTK_WINDOW(toplevel), nullptr); + +GTK_WIDGET_CLASS(webkit_script_dialog_impl_parent_class)->unmap(widget); +} +#endif + static void webkitScriptDialogImplMap(GtkWidget* widget) { WebKitScriptDialogImplPrivate* priv = WEBKIT_SCRIPT_DIALOG_IMPL(widget)->priv; @@ -235,6 +249,9 @@ widgetClass->key_press_event = webkitScriptDialogImplKeyPressEvent; #endif widgetClass->map = webkitScriptDialogImplMap; +#if USE(GTK4) +widgetClass->unmap = webkitScriptDialogImplUnmap; +#endif #if !USE(GTK4) gtk_widget_class_set_accessible_role(widgetClass, ATK_ROLE_ALERT); #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes