Index: content/browser/worker_host/worker_service_impl.cc |
diff --git a/content/browser/worker_host/worker_service_impl.cc b/content/browser/worker_host/worker_service_impl.cc |
index bd6a19d44e4ebfa3380e47c103e25e64b119789b..c1d492c3fb4ff1f27ab70b10e663cd652ef47ad4 100644 |
--- a/content/browser/worker_host/worker_service_impl.cc |
+++ b/content/browser/worker_host/worker_service_impl.cc |
@@ -110,25 +110,21 @@ void WorkerPrioritySetter::GatherVisibleIDsAndUpdateWorkerPriorities() { |
new std::set<std::pair<int, int> >(); |
// Gather up all the visible renderer process/view pairs |
- for (RenderProcessHost::iterator it = |
- RenderProcessHost::AllHostsIterator(); |
- !it.IsAtEnd(); it.Advance()) { |
- RenderProcessHost* render_process_host = it.GetCurrentValue(); |
- if (render_process_host->VisibleWidgetCount()) { |
- for (RenderProcessHost::RenderWidgetHostsIterator rit = |
- render_process_host->GetRenderWidgetHostsIterator(); !rit.IsAtEnd(); |
- rit.Advance()) { |
- RenderWidgetHost* render_widget = |
- render_process_host->GetRenderWidgetHostByID(rit.GetCurrentKey()); |
- if (render_widget) { |
- RenderWidgetHostView* render_view = render_widget->GetView(); |
- if (render_view && render_view->IsShowing()) { |
- visible_renderer_ids->insert( |
- std::pair<int, int>(render_process_host->GetID(), |
- render_widget->GetRoutingID())); |
- } |
- } |
- } |
+ |
+ 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->GetProcess()->VisibleWidgetCount() == 0) |
+ continue; |
+ |
+ RenderWidgetHostView* render_view = widget->GetView(); |
+ if (render_view && render_view->IsShowing()) { |
+ visible_renderer_ids->insert( |
+ std::pair<int, int>(widget->GetProcess()->GetID(), |
+ widget->GetRoutingID())); |
} |
} |