summaryrefslogtreecommitdiffstats
path: root/chromium/gpu/ipc/client/command_buffer_proxy_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/gpu/ipc/client/command_buffer_proxy_impl.cc')
-rw-r--r--chromium/gpu/ipc/client/command_buffer_proxy_impl.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/chromium/gpu/ipc/client/command_buffer_proxy_impl.cc b/chromium/gpu/ipc/client/command_buffer_proxy_impl.cc
index 57827e5ffc2..d1405a8425c 100644
--- a/chromium/gpu/ipc/client/command_buffer_proxy_impl.cc
+++ b/chromium/gpu/ipc/client/command_buffer_proxy_impl.cc
@@ -637,7 +637,10 @@ void CommandBufferProxyImpl::TakeFrontBuffer(const gpu::Mailbox& mailbox) {
if (last_state_.error != gpu::error::kNoError)
return;
- Send(new GpuCommandBufferMsg_TakeFrontBuffer(route_id_, mailbox));
+ // TakeFrontBuffer should be a deferred message so that it's sequenced
+ // correctly with respect to preceding ReturnFrontBuffer messages.
+ last_flush_id_ = channel_->EnqueueDeferredMessage(
+ GpuCommandBufferMsg_TakeFrontBuffer(route_id_, mailbox));
}
void CommandBufferProxyImpl::ReturnFrontBuffer(const gpu::Mailbox& mailbox,