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

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: disable browsertest for android for realz this time Created 6 years, 5 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 8ca48bc231fa6c421265c9822173a90db1ea9570..0166da1bb4035d3b71508aeb88be357abf65e865 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -1401,6 +1401,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]);
@@ -1426,6 +1428,18 @@ 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);
+ if (i->dispatch_error())
+ rph->OnBadMessageReceived(*i);
+ }
+ messages_to_deliver_with_frame.clear();
+
return true;
}

Powered by Google App Engine
This is Rietveld 408576698