[A11y] Temporary wallpaper fix for illegal frozen tree updates
This is a temporary fix until the tree can be fully stabilized before
it is frozen, so that tree mutations are unnecessary on frozen trees.
Bug: 1480627
Change-Id: Ie221364f0562d5790c04cb1f30a330dca6ab8e71
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4969341
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1213913}
diff --git a/third_party/blink/renderer/modules/accessibility/ax_object.cc b/third_party/blink/renderer/modules/accessibility/ax_object.cc
index 350014e3c..735dee7 100644
--- a/third_party/blink/renderer/modules/accessibility/ax_object.cc
+++ b/third_party/blink/renderer/modules/accessibility/ax_object.cc
@@ -619,7 +619,11 @@
void AXObject::SetAncestorsHaveDirtyDescendants() const {
CHECK(!IsDetached());
CHECK(!AXObjectCache().HasBeenDisposed());
- CHECK(!AXObjectCache().IsFrozen());
+ if (AXObjectCache().IsFrozen()) {
+ // TODO(accessibility): Restore as CHECK(), remove early return.
+ DCHECK(false) << "Attempt to update frozen tree: " << ToString(true, true);
+ return;
+ }
CHECK(!AXObjectCache().UpdatingTree());
if (!RuntimeEnabledFeatures::AccessibilityEagerAXTreeUpdateEnabled()) {