diff options
author | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-26 16:22:29 +0000 |
---|---|---|
committer | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-26 16:22:29 +0000 |
commit | bae061f73d582a23fe2ee1d9df146ee9dac2b257 (patch) | |
tree | a1c5a6ec78afbaaad21deaef2d50a4a1342d7393 /content | |
parent | 18a7019dbdee8d72bcdf060fb656295f3b64b60d (diff) | |
download | chromium_src-bae061f73d582a23fe2ee1d9df146ee9dac2b257.zip chromium_src-bae061f73d582a23fe2ee1d9df146ee9dac2b257.tar.gz chromium_src-bae061f73d582a23fe2ee1d9df146ee9dac2b257.tar.bz2 |
Remove ChildThread::ResolveRoute. The renderer cases are safer done by using RenderViewImpl's own map. Same for gpu_channel which has a map along with message router.
Review URL: https://codereview.chromium.org/14238028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196748 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r-- | content/common/child_thread.cc | 6 | ||||
-rw-r--r-- | content/common/child_thread.h | 2 | ||||
-rw-r--r-- | content/common/gpu/gpu_channel.cc | 23 | ||||
-rw-r--r-- | content/common/message_router.cc | 6 | ||||
-rw-r--r-- | content/common/message_router.h | 2 | ||||
-rw-r--r-- | content/renderer/browser_plugin/browser_plugin.cc | 4 | ||||
-rw-r--r-- | content/renderer/render_thread_impl.cc | 8 | ||||
-rw-r--r-- | content/renderer/renderer_webapplicationcachehost_impl.cc | 3 |
8 files changed, 19 insertions, 35 deletions
diff --git a/content/common/child_thread.cc b/content/common/child_thread.cc index d1c8d39..63f560a 100644 --- a/content/common/child_thread.cc +++ b/content/common/child_thread.cc @@ -186,12 +186,6 @@ void ChildThread::RemoveRoute(int32 routing_id) { router_.RemoveRoute(routing_id); } -IPC::Listener* ChildThread::ResolveRoute(int32 routing_id) { - DCHECK(MessageLoop::current() == message_loop()); - - return router_.ResolveRoute(routing_id); -} - webkit_glue::ResourceLoaderBridge* ChildThread::CreateBridge( const webkit_glue::ResourceLoaderBridge::RequestInfo& request_info) { return resource_dispatcher()->CreateBridge(request_info); diff --git a/content/common/child_thread.h b/content/common/child_thread.h index ee99868..bd23cc9 100644 --- a/content/common/child_thread.h +++ b/content/common/child_thread.h @@ -58,8 +58,6 @@ class CONTENT_EXPORT ChildThread : public IPC::Listener, public IPC::Sender { void AddRoute(int32 routing_id, IPC::Listener* listener); void RemoveRoute(int32 routing_id); - IPC::Listener* ResolveRoute(int32 routing_id); - IPC::SyncChannel* channel() { return channel_.get(); } // Creates a ResourceLoaderBridge. diff --git a/content/common/gpu/gpu_channel.cc b/content/common/gpu/gpu_channel.cc index c392a47..e26580a 100644 --- a/content/common/gpu/gpu_channel.cc +++ b/content/common/gpu/gpu_channel.cc @@ -884,18 +884,17 @@ void GpuChannel::OnDestroyCommandBuffer(int32 route_id) { TRACE_EVENT1("gpu", "GpuChannel::OnDestroyCommandBuffer", "route_id", route_id); - if (router_.ResolveRoute(route_id)) { - GpuCommandBufferStub* stub = stubs_.Lookup(route_id); - bool need_reschedule = (stub && !stub->IsScheduled()); - router_.RemoveRoute(route_id); - stubs_.Remove(route_id); - // In case the renderer is currently blocked waiting for a sync reply from - // the stub, we need to make sure to reschedule the GpuChannel here. - if (need_reschedule) { - // This stub won't get a chance to reschedule, so update the count - // now. - StubSchedulingChanged(true); - } + GpuCommandBufferStub* stub = stubs_.Lookup(route_id); + if (!stub) + return; + bool need_reschedule = (stub && !stub->IsScheduled()); + router_.RemoveRoute(route_id); + stubs_.Remove(route_id); + // In case the renderer is currently blocked waiting for a sync reply from the + // stub, we need to make sure to reschedule the GpuChannel here. + if (need_reschedule) { + // This stub won't get a chance to reschedule, so update the count now. + StubSchedulingChanged(true); } } diff --git a/content/common/message_router.cc b/content/common/message_router.cc index d3eef77..f73e654 100644 --- a/content/common/message_router.cc +++ b/content/common/message_router.cc @@ -42,7 +42,7 @@ bool MessageRouter::OnMessageReceived(const IPC::Message& msg) { } bool MessageRouter::RouteMessage(const IPC::Message& msg) { - IPC::Listener* listener = ResolveRoute(msg.routing_id()); + IPC::Listener* listener = routes_.Lookup(msg.routing_id()); if (!listener) return false; @@ -50,8 +50,4 @@ bool MessageRouter::RouteMessage(const IPC::Message& msg) { return true; } -IPC::Listener* MessageRouter::ResolveRoute(int32 routing_id) { - return routes_.Lookup(routing_id); -} - } // namespace content diff --git a/content/common/message_router.h b/content/common/message_router.h index 0b34e0c..56acead 100644 --- a/content/common/message_router.h +++ b/content/common/message_router.h @@ -52,8 +52,6 @@ class MessageRouter : public IPC::Listener, public IPC::Sender { void AddRoute(int32 routing_id, IPC::Listener* listener); void RemoveRoute(int32 routing_id); - IPC::Listener* ResolveRoute(int32 routing_id); - private: // A list of all listeners with assigned routing IDs. IDMap<IPC::Listener> routes_; diff --git a/content/renderer/browser_plugin/browser_plugin.cc b/content/renderer/browser_plugin/browser_plugin.cc index 23fd9dc..10296cb 100644 --- a/content/renderer/browser_plugin/browser_plugin.cc +++ b/content/renderer/browser_plugin/browser_plugin.cc @@ -805,8 +805,8 @@ bool BrowserPlugin::InAutoSizeBounds(const gfx::Size& size) const { NPObject* BrowserPlugin::GetContentWindow() const { if (content_window_routing_id_ == MSG_ROUTING_NONE) return NULL; - RenderViewImpl* guest_render_view = static_cast<RenderViewImpl*>( - ChildThread::current()->ResolveRoute(content_window_routing_id_)); + RenderViewImpl* guest_render_view = RenderViewImpl::FromRoutingID( + content_window_routing_id_); if (!guest_render_view) return NULL; WebKit::WebFrame* guest_frame = guest_render_view->GetWebView()->mainFrame(); diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc index 102fa47..7662223c 100644 --- a/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc @@ -513,10 +513,10 @@ bool RenderThreadImpl::Send(IPC::Message* msg) { if (notify_webkit_of_modal_loop) WebView::willEnterModalLoop(); - RenderWidget* widget = - static_cast<RenderWidget*>(ResolveRoute(msg->routing_id())); - if (widget) { - render_view_id = widget->routing_id(); + RenderViewImpl* render_view = + RenderViewImpl::FromRoutingID(msg->routing_id()); + if (render_view) { + render_view_id = msg->routing_id(); PluginChannelHost::Broadcast( new PluginMsg_SignalModalDialogEvent(render_view_id)); } diff --git a/content/renderer/renderer_webapplicationcachehost_impl.cc b/content/renderer/renderer_webapplicationcachehost_impl.cc index 78418ff..6404053 100644 --- a/content/renderer/renderer_webapplicationcachehost_impl.cc +++ b/content/renderer/renderer_webapplicationcachehost_impl.cc @@ -58,8 +58,7 @@ void RendererWebApplicationCacheHostImpl::OnCacheSelected( } RenderViewImpl* RendererWebApplicationCacheHostImpl::GetRenderView() { - return static_cast<RenderViewImpl*> - (RenderThreadImpl::current()->ResolveRoute(routing_id_)); + return RenderViewImpl::FromRoutingID(routing_id_); } // static |