| Index: content/renderer/render_widget.cc
|
| diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
|
| index f9a12e1a32f5cc80f706e3e97b03aaa75c3d6366..c5155b405d911cc0d946ea895e6e7997cdc4f3d5 100644
|
| --- a/content/renderer/render_widget.cc
|
| +++ b/content/renderer/render_widget.cc
|
| @@ -1440,7 +1440,13 @@ void RenderWidget::QueueMessage(IPC::Message* msg,
|
|
|
| if (swap_promise) {
|
| compositor_->QueueSwapPromise(swap_promise.Pass());
|
| - compositor_->SetNeedsCommit();
|
| + // Request a commit. This might either A) request a commit ahead of time
|
| + // or B) request a commit which is not needed because there are not
|
| + // pending updates. If B) then the commit will be skipped and the swap
|
| + // promises will be broken (see EarlyOut_NoUpdates). To achieve that we
|
| + // call SetNeedsUpdateLayers instead of SetNeedsCommit so that
|
| + // can_cancel_commit is not unset.
|
| + compositor_->SetNeedsUpdateLayers();
|
| }
|
| }
|
|
|
|
|