.
<rdar://problem/121259687>
Created attachment 469459 [details] Patch
Comment on attachment 469459 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=469459&action=review > Source/WebCore/accessibility/AXObjectCache.cpp:1079 > - removeRelations(axID); > - > #if ENABLE(ACCESSIBILITY_ISOLATED_TREE) > if (auto tree = AXIsolatedTree::treeForPageID(m_pageID)) > tree->removeNode(*object); > #endif > > + removeRelations(axID); TW: Just curious, why move this? Just for organization, or is there some logical difference?
(In reply to Tyler Wilcock from comment #3) > Comment on attachment 469459 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=469459&action=review > > > Source/WebCore/accessibility/AXObjectCache.cpp:1079 > > - removeRelations(axID); > > - > > #if ENABLE(ACCESSIBILITY_ISOLATED_TREE) > > if (auto tree = AXIsolatedTree::treeForPageID(m_pageID)) > > tree->removeNode(*object); > > #endif > > > > + removeRelations(axID); > > TW: Just curious, why move this? Just for organization, or is there some > logical difference? When we call tree->removeNode, the relationships for the live object still have to be alive in order to get its related objects. So that's why removing the live relations has to be after updating the iso tree. Before it was working because we were not using the relations to get the labeled objects, we were going through the Elements directly.
Committed 273251@main (df75d243cd12): <https://commits.webkit.org/273251@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 469459 [details].