Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 44ced5953d9eec601879c9741c43d238caaea2bc https://github.com/WebKit/WebKit/commit/44ced5953d9eec601879c9741c43d238caaea2bc Author: Joshua Hoffman <jhoffma...@apple.com> Date: 2024-04-24 (Wed, 24 Apr 2024)
Changed paths: A LayoutTests/accessibility/create-unconnected-node-during-layout-crash-expected.txt A LayoutTests/accessibility/create-unconnected-node-during-layout-crash.html M LayoutTests/accessibility/mac/doctype-node-in-text-marker-crash.html M Source/WebCore/accessibility/AXLogger.cpp M Source/WebCore/accessibility/AXObjectCache.cpp M Source/WebCore/accessibility/AXObjectCache.h M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h M Source/WebCore/accessibility/mac/AXObjectCacheMac.mm Log Message: ----------- AX: Move objectsForIDs back off of the main thread https://bugs.webkit.org/show_bug.cgi?id=272803 rdar://problem/126600212 Reviewed by Tyler Wilcock. This patch moves objectsForIDs back off of the main thread, which was originally done by the now-reverted commit https://commits.webkit.org/272323@main. That patch was reverted due to `addUnconnectedNode` being called at an invalid time (downstream of layout). This patch resolves that by deferring adding these nodes to performDeferredCacheUpdate, when we guarantee it is safe to do so. * LayoutTests/accessibility/create-unconnected-node-during-layout-crash-expected.txt: Added. * LayoutTests/accessibility/create-unconnected-node-during-layout-crash.html: Added. * LayoutTests/accessibility/mac/doctype-node-in-text-marker-crash.html: * Source/WebCore/accessibility/AXLogger.cpp: (WebCore::AXLogger::log): * Source/WebCore/accessibility/AXObjectCache.cpp: (WebCore::AXObjectCache::deferAddUnconnectedNode): (WebCore::AXObjectCache::performDeferredCacheUpdate): (WebCore::AXObjectCache::addRelation): * Source/WebCore/accessibility/AXObjectCache.h: * Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp: (WebCore::AXIsolatedTree::create): * Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h: (WebCore::AXIsolatedTree::objectsForIDs): * Source/WebCore/accessibility/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::createIsolatedObjectIfNeeded): (WebCore::AXObjectCache::postTextStateChangePlatformNotification): (WebCore::AXObjectCache::postUserInfoForChanges): (WebCore::AXObjectCache::postTextReplacementPlatformNotification): (WebCore::AXObjectCache::postTextReplacementPlatformNotificationForTextControl): (WebCore::AXObjectCache::onSelectedTextChanged): (WebCore::createIsolatedObjectIfNeeded): Deleted. (WebCore::postUserInfoForChanges): Deleted. Canonical link: https://commits.webkit.org/277946@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes