Index: content/renderer/render_widget.cc |
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc |
index 11ffaca56e691c49ff0a37d63b028890770added..ccebd13e0e77075e85618009715eb246ca95ef6d 100644 |
--- a/content/renderer/render_widget.cc |
+++ b/content/renderer/render_widget.cc |
@@ -1116,9 +1116,6 @@ void RenderWidget::DoDeferredUpdate() { |
return; |
} |
- if (is_accelerated_compositing_active_) |
- using_asynchronous_swapbuffers_ = SupportsAsynchronousSwapBuffers(); |
- |
// Tracking of frame rate jitter |
base::TimeTicks frame_begin_ticks = base::TimeTicks::Now(); |
InstrumentWillBeginFrame(); |
@@ -1129,6 +1126,11 @@ void RenderWidget::DoDeferredUpdate() { |
// GpuRenderingActivated message. |
webwidget_->layout(); |
+ // Check for whether we need to track swap buffers. We need to do that after |
+ // layout() because it may have switched us to accelerated compositing. |
+ if (is_accelerated_compositing_active_) |
+ using_asynchronous_swapbuffers_ = SupportsAsynchronousSwapBuffers(); |
+ |
// The following two can result in further layout and possibly |
// enable GPU acceleration so they need to be called before any painting |
// is done. |