Bug 1406047 - Schedule a composite in empty transactions that require it. r=jrmuizel
authorKartikaya Gupta <kgupta@mozilla.com>
Thu, 05 Oct 2017 11:42:41 -0400
changeset 384845 3b60f5875a263a59396a98de32b02c88d892995d
parent 384844 917077cf465755648a5380ba9985473dad854677
child 384846 777faf67f590f1d1c64f1b09601a7974a8f627ce
push id95880
push userarchaeopteryx@coole-files.de
push dateSat, 07 Oct 2017 08:58:44 +0000
treeherdermozilla-inbound@156942799371 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjrmuizel
bugs1406047
milestone58.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1406047 - Schedule a composite in empty transactions that require it. r=jrmuizel MozReview-Commit-ID: 2e3auabQvtw
gfx/layers/wr/WebRenderLayerManager.cpp
--- a/gfx/layers/wr/WebRenderLayerManager.cpp
+++ b/gfx/layers/wr/WebRenderLayerManager.cpp
@@ -185,16 +185,19 @@ WebRenderLayerManager::EndEmptyTransacti
   // We also need to update canvases that might have changed, but this code
   // as-is causes crashes so comment it out for now.
   //for (auto iter = mLastCanvasDatas.Iter(); !iter.Done(); iter.Next()) {
   //  RefPtr<WebRenderCanvasData> canvasData = iter.Get()->GetKey();
   //  WebRenderCanvasRendererAsync* canvas = canvasData->GetCanvasRenderer();
   //  canvas->UpdateCompositableClient();
   //}
 
+  if (!(aFlags & EndTransactionFlags::END_NO_COMPOSITE)) {
+    ScheduleComposite();
+  }
   return true;
 }
 
 /*static*/ int32_t
 PopulateScrollData(WebRenderScrollData& aTarget, Layer* aLayer)
 {
   MOZ_ASSERT(aLayer);