Index: content/renderer/accessibility/render_accessibility_impl.cc |
diff --git a/content/renderer/accessibility/render_accessibility_impl.cc b/content/renderer/accessibility/render_accessibility_impl.cc |
index 55b08f74285c62d92968f55e81ac8d7928bad305..872beb31a5f03da8bd5da59d68a3a539281f090c 100644 |
--- a/content/renderer/accessibility/render_accessibility_impl.cc |
+++ b/content/renderer/accessibility/render_accessibility_impl.cc |
@@ -75,6 +75,15 @@ |
ack_pending_(false), |
reset_token_(0), |
weak_factory_(this) { |
+ // There's only one AXObjectCache for the root of a local frame tree, |
+ // so if this frame's parent is local we can safely do nothing. |
+ if (render_frame_ && |
+ render_frame_->GetWebFrame() && |
+ render_frame_->GetWebFrame()->parent() && |
+ render_frame_->GetWebFrame()->parent()->isWebLocalFrame()) { |
+ return; |
+ } |
+ |
WebView* web_view = render_frame_->GetRenderView()->GetWebView(); |
WebSettings* settings = web_view->settings(); |
settings->setAccessibilityEnabled(true); |