Index: content/browser/accessibility/browser_accessibility_state_impl.cc |
diff --git a/content/browser/accessibility/browser_accessibility_state_impl.cc b/content/browser/accessibility/browser_accessibility_state_impl.cc |
index 92bc94e3839fa5209fb1d807951bbe4c38af2d69..5ce6843224811eee7f1e3ebeec493b8364bdb18f 100644 |
--- a/content/browser/accessibility/browser_accessibility_state_impl.cc |
+++ b/content/browser/accessibility/browser_accessibility_state_impl.cc |
@@ -128,27 +128,19 @@ void BrowserAccessibilityStateImpl::SetAccessibilityMode( |
if (accessibility_mode_ == mode) |
return; |
accessibility_mode_ = mode; |
- for (RenderProcessHost::iterator it(RenderProcessHost::AllHostsIterator()); |
- !it.IsAtEnd(); it.Advance()) { |
- RenderProcessHost* render_process_host = it.GetCurrentValue(); |
- DCHECK(render_process_host); |
- |
- // Ignore processes that don't have a connection, such as crashed tabs. |
- if (!render_process_host->HasConnection()) |
- continue; |
- |
- for (RenderProcessHost::RenderWidgetHostsIterator rwit( |
- render_process_host->GetRenderWidgetHostsIterator()); |
- !rwit.IsAtEnd(); |
- rwit.Advance()) { |
- RenderWidgetHost* rwh = const_cast<RenderWidgetHost*>( |
- rwit.GetCurrentValue()); |
- DCHECK(rwh); |
- if (!rwh || !rwh->IsRenderView()) |
+ |
+ scoped_ptr<RenderWidgetHost::List> hosts = |
+ RenderWidgetHost::GetRenderWidgetHosts(); |
+ for (RenderWidgetHost::List::const_iterator it = hosts->begin(); |
+ it != hosts->end(); |
+ ++it) { |
+ const RenderWidgetHost* widget = *it; |
+ if (!widget->IsRenderView()) |
continue; |
- RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(rwh); |
- rwhi->SetAccessibilityMode(mode); |
- } |
+ |
+ RenderWidgetHostImpl* rwhi = |
+ RenderWidgetHostImpl::From(const_cast<RenderWidgetHost*>(widget)); |
+ rwhi->SetAccessibilityMode(mode); |
} |
} |