[webkit-changes] [WebKit/WebKit] f890a7: AX: AXObjectCache::updateIsolatedTree may cause th...
AndresGonzalezApple
noreply at github.com
Tue Jan 16 17:25:40 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: f890a7cc18de8d183ebfe5f948686af8d1e31a50
https://github.com/WebKit/WebKit/commit/f890a7cc18de8d183ebfe5f948686af8d1e31a50
Author: Andres Gonzalez <andresg_22 at apple.com>
Date: 2024-01-16 (Tue, 16 Jan 2024)
Changed paths:
M Source/WebCore/accessibility/AXObjectCache.cpp
Log Message:
-----------
AX: AXObjectCache::updateIsolatedTree may cause the update of dependent properties for the same object multiple times unnecessarily.
https://bugs.webkit.org/show_bug.cgi?id=267599
<rdar://problem/121065998>
Reviewed by Tyler Wilcock.
AXObjectCache::updateIsolatedTree calls AXIsolatedTree::updateDependentProperties twice unnecessarily in the following scenario:
1. The passed Vector of { object, notification } contains two LabelChanged notifications.
2. There is another notification in between the two label changes that causes an updateNode.
This patch fixes this problem and replaces the struct UpdatedFields that was being used before to prevent duplication of node updates with an OptionSet. This should be somewhat more efficient and less errorprone than the existing implementation.
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::updateIsolatedTree):
Canonical link: https://commits.webkit.org/273106@main
More information about the webkit-changes
mailing list