Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(570)

Unified Diff: content/browser/renderer_host/render_widget_host_impl.cc

Issue 240163005: Deliver IPC messages together with SwapCompositorFrame (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/render_widget_host_impl.cc
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index 455ef027cbbf4ebd7b59a887c864c8410fad6bd9..0cae89dd21b369ae4e48126d7a8ab901537201ba 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -1471,6 +1471,8 @@ bool RenderWidgetHostImpl::OnSwapCompositorFrame(
scoped_ptr<cc::CompositorFrame> frame(new cc::CompositorFrame);
uint32 output_surface_id = param.a;
param.b.AssignTo(frame.get());
+ std::vector<IPC::Message> messages_to_deliver_with_frame;
+ messages_to_deliver_with_frame.swap(param.c);
for (size_t i = 0; i < frame->metadata.latency_info.size(); i++)
AddLatencyInfoComponentIds(&frame->metadata.latency_info[i]);
@@ -1496,6 +1498,16 @@ bool RenderWidgetHostImpl::OnSwapCompositorFrame(
SendSwapCompositorFrameAck(routing_id_, output_surface_id,
process_->GetID(), ack);
}
+
+ RenderProcessHost* rph = GetProcess();
+ for (std::vector<IPC::Message>::const_iterator i =
+ messages_to_deliver_with_frame.begin();
+ i != messages_to_deliver_with_frame.end();
+ ++i) {
+ rph->OnMessageReceived(*i);
+ }
+ messages_to_deliver_with_frame.clear();
+
return true;
}

Powered by Google App Engine
This is Rietveld 408576698