Timeline
Mar 28, 2021:
- 10:27 PM Changeset in webkit [275159] by
-
- 4 edits in trunk
Enable AspectRatioOfImgFromWidthAndHeightEnabled for WebKitLegacy.
https://bugs.webkit.org/show_bug.cgi?id=223815
Reviewed by Sam Weinig.
Source/WTF:
There's no reason this is enabled for WebKit and not WebKitLegacy.
And set WebCore = true since this feature could conceivably be
used in SVG images.
- Scripts/Preferences/WebPreferencesExperimental.yaml:
Tools:
- DumpRenderTree/TestOptions.cpp:
(WTR::TestOptions::defaults):
- 10:14 PM Changeset in webkit [275158] by
-
- 2 edits in trunk/LayoutTests
[GTK] Unreviewed test gardening. Add several A11y test failures to TestExpectations.
- platform/gtk/TestExpectations:
- 9:50 PM Changeset in webkit [275157] by
-
- 2 edits in trunk/Source/WebKit
[GPU Process] Don't ever replay DisplayList items of a RemoteImageBuffer in WebProcess
https://bugs.webkit.org/show_bug.cgi?id=223780
<rdar://75852494>
Reviewed by Wenson Hsieh.
Make sure the destructor of RemoteImageBufferProxy clears its DisplayList
so the destructor of the base class does not replay its items in WebProcess.
- WebProcess/GPU/graphics/RemoteImageBufferProxy.h:
- 9:47 PM Changeset in webkit [275156] by
-
- 4 edits in trunk/LayoutTests
[GLIB] Garden fast/canvas/webgl/out-of-bounds-simulated-vertexAttrib0-drawArrays.html as slow
Unreviewed test gardening.
- platform/glib/TestExpectations:
- platform/gtk/TestExpectations:
- platform/wpe/TestExpectations:
- 7:44 PM Changeset in webkit [275155] by
-
- 1 edit2 adds in trunk/LayoutTests
[GLIB] Unreviewed test gardening. Emit baseline for imported/w3c/web-platform-tests/css/css-color/system-color-compute.html
r271968 added a specific result for iOS to account for different system colors.
GLIB fails on the same test as iOS, so emiting a specific baseline is justified.
- platform/glib/imported/w3c/web-platform-tests/css/css-color/system-color-compute-expected.txt: Added.
- 6:26 PM Changeset in webkit [275154] by
-
- 2 edits in trunk/Source/WebCore
Remove JSCustomXPathNSResolver.h/JSCustomXPathNSResolver.cpp from the Xcode project as they don't exist
https://bugs.webkit.org/show_bug.cgi?id=223852
Reviewed by Simon Fraser.
- WebCore.xcodeproj/project.pbxproj:
Remove long deleted files.
- 6:20 PM Changeset in webkit [275153] by
-
- 2 edits in trunk/Source/WebCore
[Cocoa] Exception thrown from -setShouldProvideMediaDataForTrackID:
https://bugs.webkit.org/show_bug.cgi?id=223859
<rdar://75936746>
Reviewed by Eric Carlson.
Protect against undocumented exceptions thrown from -setShouldProvideMediaDataForTrackID:.
- platform/graphics/avfoundation/objc/SourceBufferParserAVFObjC.mm:
(WebCore::SourceBufferParserAVFObjC::setShouldProvideMediaDataForTrackID):
- 4:32 PM Changeset in webkit [275152] by
-
- 3 edits in trunk/Tools
Fix a bug that http server for run-benchmark script does not work on python3.
https://bugs.webkit.org/show_bug.cgi?id=223839
Reviewed by Ryosuke Niwa.
Fix encoding issue on run-benchmark http server.
Extract argument parser configure code for run-benchmark so that we can reuse it elsewhere.
- Scripts/webkitpy/benchmark_runner/http_server_driver/http_server/twisted_http_server.py:
(ServerControl.render_POST):
- Scripts/webkitpy/benchmark_runner/run_benchmark.py:
(config_argument_parser): Extract argument parser configure code so that we can reuse it elsewhere.
(parse_args):
(main):
- 12:14 PM Changeset in webkit [275151] by
-
- 236 edits in trunk
Remove ENABLE_INDEXED_DATABASE & ENABLE_INDEXED_DATABASE_IN_WORKERS, it seems like it is on for all ports
https://bugs.webkit.org/show_bug.cgi?id=223810
Reviewed by Simon Fraser.
Source/JavaScriptCore:
- inspector/protocol/IndexedDB.json:
Update for remove ENABLE_INDEXED_DATABASE conditional.
Source/WebCore:
Remove ENABLE_INDEXED_DATABASE & ENABLE_INDEXED_DATABASE_IN_WORKERS conditionals.
- Modules/indexeddb/DOMWindow+IndexedDatabase.idl:
- Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
- Modules/indexeddb/DOMWindowIndexedDatabase.h:
- Modules/indexeddb/IDBActiveDOMObject.h:
- Modules/indexeddb/IDBCursor.cpp:
- Modules/indexeddb/IDBCursor.h:
- Modules/indexeddb/IDBCursor.idl:
- Modules/indexeddb/IDBCursorDirection.idl:
- Modules/indexeddb/IDBCursorWithValue.cpp:
- Modules/indexeddb/IDBCursorWithValue.h:
- Modules/indexeddb/IDBCursorWithValue.idl:
- Modules/indexeddb/IDBDatabase.cpp:
- Modules/indexeddb/IDBDatabase.h:
- Modules/indexeddb/IDBDatabase.idl:
- Modules/indexeddb/IDBDatabaseIdentifier.cpp:
- Modules/indexeddb/IDBDatabaseIdentifier.h:
- Modules/indexeddb/IDBDatabaseNameAndVersionRequest.cpp:
- Modules/indexeddb/IDBDatabaseNameAndVersionRequest.h:
- Modules/indexeddb/IDBFactory.cpp:
- Modules/indexeddb/IDBFactory.h:
- Modules/indexeddb/IDBFactory.idl:
- Modules/indexeddb/IDBGetAllResult.cpp:
- Modules/indexeddb/IDBGetAllResult.h:
- Modules/indexeddb/IDBGetResult.cpp:
- Modules/indexeddb/IDBGetResult.h:
- Modules/indexeddb/IDBIndex.cpp:
- Modules/indexeddb/IDBIndex.h:
- Modules/indexeddb/IDBIndex.idl:
- Modules/indexeddb/IDBKey.cpp:
- Modules/indexeddb/IDBKey.h:
- Modules/indexeddb/IDBKeyData.cpp:
- Modules/indexeddb/IDBKeyData.h:
- Modules/indexeddb/IDBKeyPath.cpp:
- Modules/indexeddb/IDBKeyPath.h:
- Modules/indexeddb/IDBKeyRange.cpp:
- Modules/indexeddb/IDBKeyRange.h:
- Modules/indexeddb/IDBKeyRange.idl:
- Modules/indexeddb/IDBKeyRangeData.cpp:
- Modules/indexeddb/IDBKeyRangeData.h:
- Modules/indexeddb/IDBObjectStore.cpp:
- Modules/indexeddb/IDBObjectStore.h:
- Modules/indexeddb/IDBObjectStore.idl:
- Modules/indexeddb/IDBOpenDBRequest.cpp:
- Modules/indexeddb/IDBOpenDBRequest.h:
- Modules/indexeddb/IDBOpenDBRequest.idl:
- Modules/indexeddb/IDBRecordIdentifier.h:
- Modules/indexeddb/IDBRequest.cpp:
- Modules/indexeddb/IDBRequest.h:
- Modules/indexeddb/IDBRequest.idl:
- Modules/indexeddb/IDBRequestCompletionEvent.cpp:
- Modules/indexeddb/IDBRequestCompletionEvent.h:
- Modules/indexeddb/IDBTransaction.cpp:
- Modules/indexeddb/IDBTransaction.h:
- Modules/indexeddb/IDBTransaction.idl:
- Modules/indexeddb/IDBTransactionMode.h:
- Modules/indexeddb/IDBTransactionMode.idl:
- Modules/indexeddb/IDBValue.cpp:
- Modules/indexeddb/IDBValue.h:
- Modules/indexeddb/IDBVersionChangeEvent.cpp:
- Modules/indexeddb/IDBVersionChangeEvent.h:
- Modules/indexeddb/IDBVersionChangeEvent.idl:
- Modules/indexeddb/IndexedDB.h:
- Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
- Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h:
- Modules/indexeddb/client/IDBConnectionProxy.cpp:
- Modules/indexeddb/client/IDBConnectionProxy.h:
- Modules/indexeddb/client/IDBConnectionToServer.cpp:
- Modules/indexeddb/client/IDBConnectionToServer.h:
- Modules/indexeddb/client/IDBConnectionToServerDelegate.h:
- Modules/indexeddb/client/TransactionOperation.cpp:
- Modules/indexeddb/client/TransactionOperation.h:
- Modules/indexeddb/server/IDBBackingStore.h:
- Modules/indexeddb/server/IDBConnectionToClient.cpp:
- Modules/indexeddb/server/IDBConnectionToClient.h:
- Modules/indexeddb/server/IDBConnectionToClientDelegate.h:
- Modules/indexeddb/server/IDBSerialization.cpp:
- Modules/indexeddb/server/IDBSerialization.h:
- Modules/indexeddb/server/IDBSerializationContext.cpp:
- Modules/indexeddb/server/IDBSerializationContext.h:
- Modules/indexeddb/server/IDBServer.cpp:
- Modules/indexeddb/server/IDBServer.h:
- Modules/indexeddb/server/IndexValueEntry.cpp:
- Modules/indexeddb/server/IndexValueEntry.h:
- Modules/indexeddb/server/IndexValueStore.cpp:
- Modules/indexeddb/server/IndexValueStore.h:
- Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
- Modules/indexeddb/server/MemoryBackingStoreTransaction.h:
- Modules/indexeddb/server/MemoryCursor.cpp:
- Modules/indexeddb/server/MemoryCursor.h:
- Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
- Modules/indexeddb/server/MemoryIDBBackingStore.h:
- Modules/indexeddb/server/MemoryIndex.cpp:
- Modules/indexeddb/server/MemoryIndex.h:
- Modules/indexeddb/server/MemoryIndexCursor.cpp:
- Modules/indexeddb/server/MemoryIndexCursor.h:
- Modules/indexeddb/server/MemoryObjectStore.cpp:
- Modules/indexeddb/server/MemoryObjectStore.h:
- Modules/indexeddb/server/MemoryObjectStoreCursor.cpp:
- Modules/indexeddb/server/MemoryObjectStoreCursor.h:
- Modules/indexeddb/server/SQLiteIDBBackingStore.cpp:
- Modules/indexeddb/server/SQLiteIDBBackingStore.h:
- Modules/indexeddb/server/SQLiteIDBCursor.cpp:
- Modules/indexeddb/server/SQLiteIDBCursor.h:
- Modules/indexeddb/server/SQLiteIDBTransaction.cpp:
- Modules/indexeddb/server/SQLiteIDBTransaction.h:
- Modules/indexeddb/server/ServerOpenDBRequest.cpp:
- Modules/indexeddb/server/ServerOpenDBRequest.h:
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
- Modules/indexeddb/server/UniqueIDBDatabase.h:
- Modules/indexeddb/server/UniqueIDBDatabaseConnection.cpp:
- Modules/indexeddb/server/UniqueIDBDatabaseConnection.h:
- Modules/indexeddb/server/UniqueIDBDatabaseTransaction.cpp:
- Modules/indexeddb/server/UniqueIDBDatabaseTransaction.h:
- Modules/indexeddb/shared/IDBCursorInfo.cpp:
- Modules/indexeddb/shared/IDBCursorInfo.h:
- Modules/indexeddb/shared/IDBCursorRecord.h:
- Modules/indexeddb/shared/IDBDatabaseInfo.cpp:
- Modules/indexeddb/shared/IDBDatabaseInfo.h:
- Modules/indexeddb/shared/IDBDatabaseNameAndVersion.h:
- Modules/indexeddb/shared/IDBError.cpp:
- Modules/indexeddb/shared/IDBError.h:
- Modules/indexeddb/shared/IDBGetAllRecordsData.cpp:
- Modules/indexeddb/shared/IDBGetAllRecordsData.h:
- Modules/indexeddb/shared/IDBGetRecordData.cpp:
- Modules/indexeddb/shared/IDBGetRecordData.h:
- Modules/indexeddb/shared/IDBIndexInfo.cpp:
- Modules/indexeddb/shared/IDBIndexInfo.h:
- Modules/indexeddb/shared/IDBIterateCursorData.cpp:
- Modules/indexeddb/shared/IDBIterateCursorData.h:
- Modules/indexeddb/shared/IDBObjectStoreInfo.cpp:
- Modules/indexeddb/shared/IDBObjectStoreInfo.h:
- Modules/indexeddb/shared/IDBRequestData.cpp:
- Modules/indexeddb/shared/IDBRequestData.h:
- Modules/indexeddb/shared/IDBResourceIdentifier.cpp:
- Modules/indexeddb/shared/IDBResourceIdentifier.h:
- Modules/indexeddb/shared/IDBResultData.cpp:
- Modules/indexeddb/shared/IDBResultData.h:
- Modules/indexeddb/shared/IDBTransactionInfo.cpp:
- Modules/indexeddb/shared/IDBTransactionInfo.h:
- Modules/indexeddb/shared/IndexKey.cpp:
- Modules/indexeddb/shared/IndexKey.h:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/IDBBindingUtilities.cpp:
- bindings/js/IDBBindingUtilities.h:
- bindings/js/JSDOMConvertIndexedDB.h:
- bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::scriptExecutionContext const):
(WebCore::scriptModuleLoader):
- bindings/js/JSIDBCursorCustom.cpp:
- bindings/js/JSIDBCursorWithValueCustom.cpp:
- bindings/js/JSIDBIndexCustom.cpp:
- bindings/js/JSIDBObjectStoreCustom.cpp:
- bindings/js/JSIDBRequestCustom.cpp:
- bindings/js/JSIDBSerializationGlobalObject.cpp:
- bindings/js/JSIDBSerializationGlobalObject.h:
- bindings/js/JSIDBTransactionCustom.cpp:
- bindings/js/SerializedScriptValue.cpp:
- bindings/js/SerializedScriptValue.h:
- bindings/js/WebCoreJSClientData.cpp:
(WebCore::JSVMClientData::JSVMClientData):
- bindings/js/WebCoreJSClientData.h:
- dom/Document.cpp:
(WebCore::Document::idbConnectionProxy):
(WebCore::Document::setBackForwardCacheState):
- dom/Document.h:
- dom/EmptyScriptExecutionContext.h:
- dom/EventNames.in:
- dom/EventTargetFactory.in:
- dom/ScriptExecutionContext.h:
- inspector/InspectorController.cpp:
(WebCore::InspectorController::createLazyAgents):
- inspector/agents/InspectorIndexedDBAgent.cpp:
- inspector/agents/InspectorIndexedDBAgent.h:
- loader/EmptyClients.cpp:
- page/DatabaseProvider.h:
- page/Page.cpp:
(WebCore::Page::setSessionID):
(WebCore::Page::clearIDBConnection):
- page/Page.h:
- testing/Internals.cpp:
(WebCore::Internals::numberOfIDBTransactions const):
- testing/Internals.h:
- testing/Internals.idl:
- workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::WorkerGlobalScope):
(WebCore::WorkerGlobalScope::prepareForDestruction):
(WebCore::WorkerGlobalScope::idbConnectionProxy):
(WebCore::WorkerGlobalScope::stopIndexedDatabase):
(WebCore::WorkerGlobalScope::suspend):
(WebCore::WorkerGlobalScope::resume):
- workers/WorkerGlobalScope.h:
- workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
- workers/WorkerThread.cpp:
(WebCore::WorkerThread::WorkerThread):
(WebCore::WorkerThread::idbConnectionProxy):
- workers/WorkerThread.h:
- workers/service/context/ServiceWorkerThreadProxy.cpp:
(WebCore::idbConnectionProxy):
- worklets/WorkletGlobalScope.h:
Source/WebInspectorUI:
- Versions/Inspector-iOS-14.0.json:
- Versions/Inspector-iOS-14.5.json:
Update for removed ENABLE_INDEXED_DATABASE conditional.
Source/WebKit:
Remove ENABLE_INDEXED_DATABASE & ENABLE_INDEXED_DATABASE_IN_WORKERS conditionals.
- NetworkProcess/IndexedDB/WebIDBConnectionToClient.cpp:
- NetworkProcess/IndexedDB/WebIDBConnectionToClient.h:
- NetworkProcess/IndexedDB/WebIDBServer.cpp:
- NetworkProcess/IndexedDB/WebIDBServer.h:
- NetworkProcess/IndexedDB/WebIDBServer.messages.in:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
(WebKit::NetworkProcess::addWebsiteDataStore):
(WebKit::NetworkProcess::destroySession):
(WebKit::NetworkProcess::fetchWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
(WebKit::NetworkProcess::deleteAndRestrictWebsiteDataForRegistrableDomains):
(WebKit::NetworkProcess::registrableDomainsWithWebsiteData):
(WebKit::NetworkProcess::prepareToSuspend):
(WebKit::NetworkProcess::resume):
(WebKit::NetworkProcess::renameOriginInWebsiteData):
(WebKit::NetworkProcess::storageQuotaManager):
(WebKit::NetworkProcess::connectionToWebProcessClosed):
- NetworkProcess/NetworkProcess.h:
(WebKit::NetworkProcess::SessionStorageQuotaManager::idbRootPath const):
- Shared/Databases/IndexedDB/IDBUtilities.cpp:
- Shared/Databases/IndexedDB/IDBUtilities.h:
- Shared/Databases/IndexedDB/WebIDBResult.cpp:
- Shared/Databases/IndexedDB/WebIDBResult.h:
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<IDBKeyPath>::decode):
- Shared/WebCoreArgumentCoders.h:
- Shared/WebsiteDataStoreParameters.cpp:
(WebKit::WebsiteDataStoreParameters::encode const):
(WebKit::WebsiteDataStoreParameters::decode):
- Shared/WebsiteDataStoreParameters.h:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::addSession):
(WebKit::NetworkProcessProxy::createSymLinkForFileUpgrade):
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::parameters):
- WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp:
- WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h:
- WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.messages.in:
- WebProcess/Databases/WebDatabaseProvider.cpp:
(WebKit::WebDatabaseProvider::idbConnectionToServerForSession):
- WebProcess/Databases/WebDatabaseProvider.h:
- WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::didReceiveMessage):
(WebKit::NetworkProcessConnection::didClose):
(WebKit::NetworkProcessConnection::idbConnectionToServer):
- WebProcess/Network/NetworkProcessConnection.h:
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
(WebKit::WebSWContextManagerConnection::installServiceWorker):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::networkProcessConnectionClosed):
Source/WebKitLegacy:
Remove ENABLE_INDEXED_DATABASE & ENABLE_INDEXED_DATABASE_IN_WORKERS conditionals.
- Storage/InProcessIDBServer.cpp:
(InProcessIDBServer::dispatchTaskReply):
- Storage/InProcessIDBServer.h:
- Storage/WebDatabaseProvider.cpp:
(WebDatabaseProvider::deleteAllDatabases):
- Storage/WebDatabaseProvider.h:
Source/WebKitLegacy/mac:
Remove ENABLE_INDEXED_DATABASE & ENABLE_INDEXED_DATABASE_IN_WORKERS conditionals.
- Storage/WebDatabaseManager.mm:
(-[WebDatabaseManager deleteAllIndexedDatabases]):
Source/WebKitLegacy/win:
Remove ENABLE_INDEXED_DATABASE & ENABLE_INDEXED_DATABASE_IN_WORKERS conditionals.
- WebDatabaseManager.cpp:
(WebDatabaseManager::deleteAllIndexedDatabases):
- storage/WebDatabaseProvider.cpp:
(WebDatabaseProvider::indexedDatabaseDirectoryPath):
Source/WTF:
- wtf/PlatformEnable.h:
- wtf/PlatformEnableCocoa.h:
Remove ENABLE_INDEXED_DATABASE and ENABLE_INDEXED_DATABASE_IN_WORKERS.
Tools:
- Scripts/webkitperl/FeatureList.pm:
Remove ENABLE_INDEXED_DATABASE & ENABLE_INDEXED_DATABASE_IN_WORKERS from FeatureList.pm.
- 11:31 AM Changeset in webkit [275150] by
-
- 5 edits1 add in trunk
Compile WebKit with UBSan
<https://webkit.org/b/176131>
<rdar://problem/34174018>
Reviewed by Alexey Proskuryakov.
.:
- Makefile.shared:
- Add support for "UBSAN=YES" argument to make.
Tools:
- Scripts/set-webkit-configuration:
- Add support for --[no-]ubsan command-line switch.
- Add warning when enabling ASan and TSan together.
(updateOrDeleteConfigurationFile):
- Extract common code for updating configuration files.
- Scripts/webkitdirs.pm:
(readSanitizerConfiguration): Add.
- Extract common code for reading sanitizer configuration files.
(determineASanIsEnabled):
(determineTSanIsEnabled):
(determineUBSanIsEnabled): Add.
- Make use of readSanitizerConfiguration().
(ubsanIsEnabled): Add.
(XcodeOptions):
- Add command-line switches for UBSan.
(generateBuildSystemFromCMakeProject): Ditto.
- sanitizer/ubsan.xcconfig: Add.
- Contains Xcode settings for enabling UBSan.
- 10:46 AM Changeset in webkit [275149] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION(r274527): [GStreamer] media/webaudio-background-playback.html now failing
https://bugs.webkit.org/show_bug.cgi?id=223840
Patch by Philippe Normand <pnormand@igalia.com> on 2021-03-28
Reviewed by Chris Dumez.
r274527 actually exposed a bug that was present since r271197. The AudioDestination pipeline
was not stopping properly because webkitGstSetElementStateSynchronously() was returning too
early.
This patch also includes a few improvements in the webaudiosrc element, most notably
regarding its preroll state. The element now stops emitting buffers downstream as soon as
the AudioDestination is scheduled to stop.
- platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
(webKitWebAudioSrcRenderAndPushFrames): Return early as soon as the destination is scheduled to stop.
(webKitWebAudioSrcChangeState): Synchronize preroll state with element state.
- platform/graphics/gstreamer/GStreamerCommon.cpp:
(WebCore::webkitGstSetElementStateSynchronously): targetState might be lower than current
state, e.g, when stopping a running pipeline, so we can't return early for those cases,
otherwise the pipeline won't stop.
- 10:40 AM Changeset in webkit [275148] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, add an exception for a heap allocation on the WebAudio thread.
I recently added assertions to catch heap allocations on the WebAudio threads and failed to
mark this one as allowed (for now).
- Modules/webaudio/BaseAudioContext.cpp:
(WebCore::BaseAudioContext::markForDeletion):
- 6:55 AM Changeset in webkit [275147] by
-
- 5 edits4 adds in trunk
Use-after-move in UserMediaPermissionRequestManagerProxy::checkUserMediaPermissionForSpeechRecognition
https://bugs.webkit.org/show_bug.cgi?id=223842
<rdar://problem/75791668>
Reviewed by Eric Carlson.
Source/WebKit:
Use request decision handler instead of already moved completion handler.
Tests: fast/speechrecognition/start-recognition-after-denied-gum.html
fast/speechrecognition/start-recognition-after-gum.html
- UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
(WebKit::UserMediaPermissionRequestManagerProxy::checkUserMediaPermissionForSpeechRecognition):
LayoutTests:
- fast/speechrecognition/start-recognition-after-denied-gum-expected.txt: Added.
- fast/speechrecognition/start-recognition-after-denied-gum.html: Added.
- fast/speechrecognition/start-recognition-after-gum-expected.txt: Added.
- fast/speechrecognition/start-recognition-after-gum.html: Added.
- platform/mac-wk1/TestExpectations:
- platform/win/TestExpectations:
- 3:00 AM WebKitGTK/2.32.x edited by
- (diff)
Mar 27, 2021:
- 8:26 PM Changeset in webkit [275146] by
-
- 3 edits in trunk/Source/WebKit
Have DisplayLink compute its displayNominalFramesPerSecond just once
https://bugs.webkit.org/show_bug.cgi?id=223845
Reviewed by Zalan Bujtas.
Rather than calling CVDisplayLinkGetNominalOutputVideoRefreshPeriod() every time,
just store displayNominalFramesPerSecond in a member variable.
- UIProcess/mac/DisplayLink.cpp:
(WebKit::DisplayLink::DisplayLink):
(WebKit::DisplayLink::nominalFramesPerSecondFromDisplayLink):
(WebKit::DisplayLink::nominalFramesPerSecond const): Deleted.
- UIProcess/mac/DisplayLink.h:
(WebKit::DisplayLink::nominalFramesPerSecond const):
- 8:22 PM Changeset in webkit [275145] by
-
- 2 edits1 add in trunk/Tools/buildstream
[Flatpak SDK] Backport GTK4 Clipboard fix for GdkContentProviderUnion
https://bugs.webkit.org/show_bug.cgi?id=223813
Reviewed by Philippe Normand.
From https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3346
Will fix some clipbaoard crashes.
- elements/sdk/gtk.bst:
- patches/gtk-clipboard-Fix-a-crash-when-GdkContentProviderUnion-d.patch: Added.
- 7:52 PM Changeset in webkit [275144] by
-
- 21 edits in trunk/Source
Allow DisplayRefreshMonitor to be more long-lived objects
https://bugs.webkit.org/show_bug.cgi?id=223844
Reviewed by Chris Dumez.
The existing behavior for DisplayRefreshMonitors was that they were created and destroyed
frequently, as their clients are registered and unregistered. In addition, some of
their subclasses had duplicated logic related to how often they fired without clients
before they were removed.
The 1:1 correspondance between DisplayRefreshMonitors and physical displays makes them
a useful place to store per-display information (like refresh rate), which should
persist whether or not they have clients, so this change prepares for that.
The main changes in this patch are:
- Provide virtual startNotificationMechanism()/stopNotificationMechanism() functions on DisplayRefreshMonitor that subclasses can use to start their CVDisplayLink or related functionality.
- Provide some shared maxUnscheduledFireCount logic that subclasses can tune to provide the hysteresis used to control the start/stop of the underlying notification mechanism.
- Provide a shared dispatchDisplayDidRefresh() function that most implementations can use.
Source/WebCore:
DisplayRefreshMonitorManager no longer destroys DisplayRefreshMonitors when they lose
all their clients. This means that DisplayRefreshMonitors are never removed, but there
should only ever be as many as there are physical displays, and they are only
active if being scheduled by clients.
- loader/EmptyClients.cpp:
- platform/graphics/DisplayRefreshMonitor.cpp:
(WebCore::DisplayRefreshMonitor::stop):
(WebCore::DisplayRefreshMonitor::removeClient):
(WebCore::DisplayRefreshMonitor::requestRefreshCallback):
(WebCore::DisplayRefreshMonitor::firedAndReachedMaxUnscheduledFireCount):
(WebCore::DisplayRefreshMonitor::displayLinkFired):
(WebCore::DisplayRefreshMonitor::dispatchDisplayDidRefresh):
(WebCore::DisplayRefreshMonitor::displayDidRefresh):
- platform/graphics/DisplayRefreshMonitor.h:
(WebCore::DisplayRefreshMonitor::setMaxUnscheduledFireCount):
(WebCore::DisplayRefreshMonitor::mutex):
(WebCore::DisplayRefreshMonitor::displayLinkFired): Deleted.
(WebCore::DisplayRefreshMonitor::stop): Deleted.
(WebCore::DisplayRefreshMonitor::shouldBeTerminated const): Deleted.
(WebCore::DisplayRefreshMonitor::isActive const): Deleted.
(WebCore::DisplayRefreshMonitor::setIsActive): Deleted.
- platform/graphics/DisplayRefreshMonitorManager.cpp:
(WebCore::DisplayRefreshMonitorManager::unregisterClient):
(WebCore::DisplayRefreshMonitorManager::displayDidRefresh):
(WebCore::DisplayRefreshMonitorManager::displayWasUpdated):
- platform/graphics/gtk/DisplayRefreshMonitorGtk.cpp:
(WebCore::DisplayRefreshMonitorGtk::~DisplayRefreshMonitorGtk):
(WebCore::onFrameClockUpdate):
(WebCore::DisplayRefreshMonitorGtk::stop):
(WebCore::DisplayRefreshMonitorGtk::startNotificationMechanism):
(WebCore::DisplayRefreshMonitorGtk::stopNotificationMechanism):
(WebCore::DisplayRefreshMonitorGtk::requestRefreshCallback): Deleted.
(WebCore::DisplayRefreshMonitorGtk::displayLinkFired): Deleted.
- platform/graphics/gtk/DisplayRefreshMonitorGtk.h:
- platform/graphics/ios/DisplayRefreshMonitorIOS.h:
- platform/graphics/ios/DisplayRefreshMonitorIOS.mm:
(-[WebDisplayLinkHandler setPaused:]):
(WebCore::DisplayRefreshMonitorIOS::DisplayRefreshMonitorIOS):
(WebCore::DisplayRefreshMonitorIOS::~DisplayRefreshMonitorIOS):
(WebCore::DisplayRefreshMonitorIOS::stop):
(WebCore::DisplayRefreshMonitorIOS::startNotificationMechanism):
(WebCore::DisplayRefreshMonitorIOS::stopNotificationMechanism):
(WebCore::DisplayRefreshMonitorIOS::requestRefreshCallback): Deleted.
(WebCore::DisplayRefreshMonitorIOS::displayLinkFired): Deleted.
- platform/graphics/mac/LegacyDisplayRefreshMonitorMac.cpp:
(WebCore::LegacyDisplayRefreshMonitorMac::LegacyDisplayRefreshMonitorMac):
(WebCore::LegacyDisplayRefreshMonitorMac::stop):
(WebCore::LegacyDisplayRefreshMonitorMac::dispatchDisplayDidRefresh):
(WebCore::LegacyDisplayRefreshMonitorMac::startNotificationMechanism):
(WebCore::LegacyDisplayRefreshMonitorMac::stopNotificationMechanism):
(WebCore::LegacyDisplayRefreshMonitorMac::requestRefreshCallback): Deleted.
(WebCore::LegacyDisplayRefreshMonitorMac::displayLinkFired): Deleted.
- platform/graphics/mac/LegacyDisplayRefreshMonitorMac.h:
- platform/graphics/win/DisplayRefreshMonitorWin.cpp:
(WebCore::DisplayRefreshMonitorWin::DisplayRefreshMonitorWin):
(WebCore::DisplayRefreshMonitorWin::startNotificationMechanism):
(WebCore::DisplayRefreshMonitorWin::stopNotificationMechanism):
(WebCore::DisplayRefreshMonitorWin::requestRefreshCallback): Deleted.
(WebCore::DisplayRefreshMonitorWin::displayLinkFired): Deleted.
- platform/graphics/win/DisplayRefreshMonitorWin.h:
Source/WebKit:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.cpp:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.h:
- UIProcess/mac/DisplayLink.cpp:
(WebKit::DisplayLink::DisplayLink):
(WebKit::DisplayLink::~DisplayLink):
(WebKit::DisplayLink::addObserver):
(WebKit::DisplayLink::notifyObserversDisplayWasRefreshed):
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.h:
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.mm:
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback):
- WebProcess/WebPage/mac/DisplayRefreshMonitorMac.cpp:
(WebKit::DisplayRefreshMonitorMac::DisplayRefreshMonitorMac):
(WebKit::DisplayRefreshMonitorMac::~DisplayRefreshMonitorMac):
(WebKit::DisplayRefreshMonitorMac::dispatchDisplayDidRefresh):
(WebKit::DisplayRefreshMonitorMac::startNotificationMechanism):
(WebKit::DisplayRefreshMonitorMac::stopNotificationMechanism):
(WebKit::DisplayRefreshMonitorMac::requestRefreshCallback): Deleted.
(WebKit::DisplayRefreshMonitorMac::displayLinkFired): Deleted.
- WebProcess/WebPage/mac/DisplayRefreshMonitorMac.h:
- 5:40 PM Changeset in webkit [275143] by
-
- 2 edits in trunk/Source/WebCore
Don't add Frame as an opaque root of DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=223838
Reviewed by Simon Fraser.
Don't add Frame as an opaque root of DOMWindow since we don't use Frame
as an opaque root of any JS wrappers since r248276.
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::visitAdditionalChildren):
- 4:26 PM Changeset in webkit [275142] by
-
- 2 edits in trunk/Source/WebCore
UBSan: runtime error: load of value <unknown>, which is not a valid value for type 'const WebCore::RealtimeMediaSourceCapabilities::EchoCancellation'
<https://webkit.org/b/223821>
Reviewed by Chris Dumez.
Tests: fast/mediastream/MediaDevices-addEventListener.html
fast/mediastream/constraint-intrinsic-size.html
http/tests/media/media-stream/enumerate-devices-iframe-allow-attribute.html
http/tests/media/media-stream/get-display-media-iframe-allow-attribute.html
imported/w3c/web-platform-tests/mediacapture-record/MediaRecorder-bitrate.https.html
webrtc/addICECandidate-closed.html
webrtc/ice-candidate-sdpMLineIndex.html
webrtc/libwebrtc/descriptionGetters.html
webrtc/peerconnection-page-cache.html
- platform/mediastream/RealtimeMediaSourceCapabilities.h:
(WebCore::CapabilityValueOrRange::union ValueUnion):
- Make asDouble the first union member so C++ member initializers set all memory.
(WebCore::CapabilityValueOrRange::m_minOrValue):
(WebCore::CapabilityValueOrRange::m_max):
(WebCore::CapabilityValueOrRange::m_type):
(WebCore::RealtimeMediaSourceCapabilities::m_echoCancellation):
- Provide member initializers. Setting a default value for m_echoCancellation fixes the bug.
(WebCore::RealtimeMediaSourceCapabilities::encode const):
- Drive-by clean-up of encoder statement.
- 3:34 PM Changeset in webkit [275141] by
-
- 7 edits in trunk/Source/WebCore
Fix build with ENABLE_CSS3_TEXT
https://bugs.webkit.org/show_bug.cgi?id=223841
Reviewed by Darin Adler.
We also remove the -webkit- prefix for the "hanging" and "each-line" keywords since
these are well specified by the CSS Text Module Level 3 spec.
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
- css/CSSValueKeywords.in:
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeTextIndent):
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::setTextIndentType):
(WebCore::RenderStyle::setTextAlignLast):
(WebCore::RenderStyle::setTextJustify):
- rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
- style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueTextIndent):
- 2:05 PM Changeset in webkit [275140] by
-
- 2 edits in trunk/Source/WTF
wtf/Vector.h:1276:88: runtime error: reference binding to null pointer of type 'const WebCore::Style::RuleFeature'
https://bugs.webkit.org/show_bug.cgi?id=223828
Reviewed by David Kilzer.
Fix issue found by UBSan in Vector::append(const U*, size_t):
wtf/Vector.h:1276:88: runtime error: reference binding to null pointer of type 'const WebCore::Style::RuleFeature'
wtf/Vector.h:1276:88: runtime error: reference binding to null pointer of type 'const WebCore::LayoutRect'
wtf/Vector.h:1276:88: runtime error: reference binding to null pointer of type 'const WTF::RefPtr<WebCore::CSSStyleSheet, WTF::RawPtrTraits<WebCore::CSSStyleSheet>, WTF::DefaultRefDerefTraits<WebCore::CSSStyleSheet> >'
- wtf/Vector.h:
(WTF::Malloc>::append):
Return early if dataSize is 0. For some call sites, the pointer may be null and dataSize is 0. In such cases,
we should just return early instead of proceeding and using the null pointer. I believe this can happen if
you call Vector::appendVector() with an empty Vector for example.
- 1:57 PM Changeset in webkit [275139] by
-
- 8 edits in branches/safari-612.1.7-branch/Source
Versioning.
WebKit-7612.1.7.11
- 1:54 PM Changeset in webkit [275138] by
-
- 8 edits in branches/safari-612.1.7-branch/Source
Versioning.
WebKit-7612.1.7.10
- 11:52 AM Changeset in webkit [275137] by
-
- 21 edits in trunk
PCM: Send report to both click source and attribution destination website
https://bugs.webkit.org/show_bug.cgi?id=223615
<rdar://problem/75849443>
Reviewed by Brent Fulgham.
Source/WebCore:
Introduce 2 new structs for storing the earliest time to send and
seconds until send for the source and destination sites.
- loader/PrivateClickMeasurement.cpp:
(WebCore::PrivateClickMeasurement::isValid const):
(WebCore::PrivateClickMeasurement::hasPreviouslyBeenReported):
(WebCore::randomlyBetweenTwentyFourAndFortyEightHours):
(WebCore::PrivateClickMeasurement::attributeAndGetEarliestTimeToSend):
- loader/PrivateClickMeasurement.h:
(WebCore::PrivateClickMeasurement::AttributionSecondsUntilSendData::hasValidSecondsUntilSendValues):
(WebCore::PrivateClickMeasurement::AttributionSecondsUntilSendData::minSecondsUntilSend):
(WebCore::PrivateClickMeasurement::AttributionSecondsUntilSendData::encode const):
(WebCore::PrivateClickMeasurement::AttributionSecondsUntilSendData::decode):
(WebCore::PrivateClickMeasurement::AttributionTimeToSendData::earliestTimeToSend):
(WebCore::PrivateClickMeasurement::AttributionTimeToSendData::latestTimeToSend):
(WebCore::PrivateClickMeasurement::AttributionTimeToSendData::attributionReportEndpoint):
(WebCore::PrivateClickMeasurement::AttributionTimeToSendData::encode const):
(WebCore::PrivateClickMeasurement::AttributionTimeToSendData::decode):
(WebCore::PrivateClickMeasurement::timesToSend const):
(WebCore::PrivateClickMeasurement::setTimesToSend):
(WebCore::PrivateClickMeasurement::encode const):
(WebCore::PrivateClickMeasurement::decode):
(WebCore::PrivateClickMeasurement::earliestTimeToSend const): Deleted.
(WebCore::PrivateClickMeasurement::setEarliestTimeToSend): Deleted.
Source/WebKit:
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
Move these queries to the correct INSERT OR REPLACE category. Stop
inserting null for earliestTimeToSendToDestination and starting
binding a parameter to it now that we are supporting reports to both
sites.
Now that earliestTimeToSend* can be null if a report has been sent
to a site, we need queries to set the value to null, and also need
to sort attributions by the minimum of either the two reporting times,
or the non-null time if one is null.
(WebKit::ResourceLoadStatisticsDatabaseStore::destroyStatements):
(WebKit::ResourceLoadStatisticsDatabaseStore::buildPrivateClickMeasurementFromDatabase):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertPrivateClickMeasurement):
(WebKit::ResourceLoadStatisticsDatabaseStore::attributePrivateClickMeasurement):
We should not attribute a PCM value if it has already been reported to
either the source or destination. This is covered by checking
secondsUntilSend.hasValidSecondsUntilSendValues() and
previouslyAttributed.value().hasPreviouslyBeenReported() before
inserting anything into the attributed PCM table.
(WebKit::ResourceLoadStatisticsDatabaseStore::earliestTimesToSend):
(WebKit::ResourceLoadStatisticsDatabaseStore::markReportAsSentToSource):
(WebKit::ResourceLoadStatisticsDatabaseStore::markReportAsSentToDestination):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearSentAttribution):
Clear a value from the attributed table only if it has been sent to
both source and destination site. Otherwise, set the corresponding
attribution endpoint to null so we don't send it here again.
(WebKit::ResourceLoadStatisticsDatabaseStore::markAttributedPrivateClickMeasurementsAsExpiredForTesting):
For the sake of testing we can set the destination earliest time to
send to null. We are only confirming here that the expired attribution
gets sent.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h:
- NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h:
- NetworkProcess/Classifier/ResourceLoadStatisticsStore.h:
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::attributePrivateClickMeasurement):
(WebKit::WebResourceLoadStatisticsStore::clearSentAttribution):
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
- NetworkProcess/PrivateClickMeasurementManager.cpp:
(WebKit::PrivateClickMeasurementManager::storeUnattributed):
(WebKit::PrivateClickMeasurementManager::getTokenPublicKey):
We currently have no way of setting the destination token URL site for
testing. To avoid flakiness, we should not make a ping load for the
token URL if we are reporting to the destination in test mode.
(WebKit::PrivateClickMeasurementManager::attribute):
(WebKit::PrivateClickMeasurementManager::fireConversionRequest):
(WebKit::PrivateClickMeasurementManager::fireConversionRequestImpl):
(WebKit::PrivateClickMeasurementManager::clearSentAttribution):
(WebKit::PrivateClickMeasurementManager::firePendingAttributionRequests):
- NetworkProcess/PrivateClickMeasurementManager.h:
Tools:
Update API tests to check for a valid time to send for both the source
and destination site.
- TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp:
(TestWebKitAPI::TEST):
LayoutTests:
Layout test coverage.
- http/tests/privateClickMeasurement/resources/conversionFilePath.py:
- http/tests/privateClickMeasurement/resources/conversionReport.py:
- http/tests/privateClickMeasurement/resources/fraudPreventionTestURL.py:
- http/tests/privateClickMeasurement/resources/getConversionData.py:
- http/tests/privateClickMeasurement/send-attribution-conversion-request-expected.txt:
- http/tests/privateClickMeasurement/send-attribution-conversion-request.html:
- 11:31 AM Changeset in webkit [275136] by
-
- 2 edits in trunk/Source/WebKit
Remove DisplayRefreshMonitor::handleDisplayRefreshedNotificationOnMainThread()
https://bugs.webkit.org/show_bug.cgi?id=223837
Patch by Tyler Wilcock <Tyler Wilcock> on 2021-03-27
Reviewed by Simon Fraser.
Fixes build for GTK + WPE after
https://trac.webkit.org/changeset/275134/webkit.
Quoting that revision:
handleDisplayRefreshedNotificationOnMainThread() is an anachronism left over from
the non-main-thread nature of the CVDisplayLink callback. There's no need to burden
all subclasses of DisplayRefreshMonitor with that detail.
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.cpp:
(WebKit::ThreadedDisplayRefreshMonitor::invalidate):
(WebKit::ThreadedDisplayRefreshMonitor::displayRefreshCallback):
Replace call to DisplayRefreshMonitor::handleDisplayRefreshedNotificationOnMainThread(this)
with displayDidRefresh().
- 10:15 AM Changeset in webkit [275135] by
-
- 2 edits in trunk/Source/WebKit
Fix leaks in WKInspectorResourceURLSchemeHandler
<https://webkit.org/b/223824>
Reviewed by Joseph Pecoraro.
- UIProcess/Inspector/mac/WKInspectorResourceURLSchemeHandler.mm:
(-[WKInspectorResourceURLSchemeHandler webView:startURLSchemeTask:]):
- Make use of adoptNS() when assigning a newly allocated, +1 retained Objective-C object to a RetainPtr<>.
- Also fix leak of local NSHTTPURLResponse object by using a RetainPtr<>.
- 9:01 AM Changeset in webkit [275134] by
-
- 10 edits in trunk/Source
Remove DisplayRefreshMonitor::handleDisplayRefreshedNotificationOnMainThread()
https://bugs.webkit.org/show_bug.cgi?id=223837
Reviewed by Tim Horton.
Source/WebCore:
handleDisplayRefreshedNotificationOnMainThread() is an anachronism left over from
the non-main-thread nature of the CVDisplayLink callback. There's no need to burden
all subclasses of DisplayRefreshMonitor with that detail.
- platform/graphics/DisplayRefreshMonitor.cpp:
(WebCore::DisplayRefreshMonitor::displayDidRefresh):
(WebCore::DisplayRefreshMonitor::handleDisplayRefreshedNotificationOnMainThread): Deleted.
- platform/graphics/DisplayRefreshMonitor.h:
- platform/graphics/gtk/DisplayRefreshMonitorGtk.cpp:
(WebCore::DisplayRefreshMonitorGtk::displayLinkFired):
- platform/graphics/ios/DisplayRefreshMonitorIOS.mm:
(WebCore::DisplayRefreshMonitorIOS::displayLinkFired):
- platform/graphics/mac/LegacyDisplayRefreshMonitorMac.cpp:
(WebCore::LegacyDisplayRefreshMonitorMac::displayLinkFired):
- platform/graphics/win/DisplayRefreshMonitorWin.cpp:
(WebCore::DisplayRefreshMonitorWin::displayLinkFired):
Source/WebKit:
handleDisplayRefreshedNotificationOnMainThread() is an anachronism left over from
the non-main-thread nature of the CVDisplayLink callback. There's no need to burden
all subclasses of DisplayRefreshMonitor with that detail.
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.mm:
(WebKit::RemoteLayerTreeDisplayRefreshMonitor::didUpdateLayers):
- WebProcess/WebPage/mac/DisplayRefreshMonitorMac.cpp:
(WebKit::DisplayRefreshMonitorMac::displayLinkFired):
- 6:51 AM Changeset in webkit [275133] by
-
- 4 edits2 adds in trunk
[Multicolumn] Do not try to re-validate a multicol spanner when the renderer is moved internally
https://bugs.webkit.org/show_bug.cgi?id=223836
<rdar://75742694>
Reviewed by Ryosuke Niwa.
Source/WebCore:
When a renderer becomes a multicol spanner
- it is moved out of its original tree position and placed as a sibling of the enclosing multicolumn flow and
- a spanner placeholder is constructed and inserted at the original position
This patch fixes the case when an already placed multicol spanner is internally moved (e.g. collapsing an anonymous block parent)
and we attempt to re-insert this spanner to the multicolumn flow. No spanner state should change due to internal re-parenting.
Test: fast/multicol/spanner-get-re-added-on-move-crash.html
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::attachToRenderElementInternal):
LayoutTests:
- TestExpectations:
- fast/multicol/spanner-get-re-added-on-move-crash-expected.txt: Added.
- fast/multicol/spanner-get-re-added-on-move-crash.html: Added.
- 3:52 AM Changeset in webkit [275132] by
-
- 3 edits in trunk
REGRESSION(r275111) [GLIB] Fix build with new derived sources and forwarding headers scheme
https://bugs.webkit.org/show_bug.cgi?id=223834
Unreviewed build fix.
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake: