Bug 1479939 - Ensure we tell WR to remove the compositable pipelines when clearing resources. r=sotaro
authorKartikaya Gupta <kgupta@mozilla.com>
Thu, 02 Aug 2018 00:17:36 -0400
changeset 429939 dcea9f4775fa762440fc57968f7fb94c761d0d7c
parent 429938 e8cbae41139cd71150f86435e54f3402c04869fd
child 429940 cf92c88df89f761f33eab1fafc3440d7b8257474
push id34376
push userbtara@mozilla.com
push dateFri, 03 Aug 2018 10:10:33 +0000
treeherdermozilla-central@484dc9b59dca [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerssotaro
bugs1479939
milestone63.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 1479939 - Ensure we tell WR to remove the compositable pipelines when clearing resources. r=sotaro MozReview-Commit-ID: AxuvERUalhb
gfx/layers/wr/WebRenderBridgeParent.cpp
--- a/gfx/layers/wr/WebRenderBridgeParent.cpp
+++ b/gfx/layers/wr/WebRenderBridgeParent.cpp
@@ -1705,16 +1705,17 @@ WebRenderBridgeParent::ClearResources()
     }
   }
   mTextureHosts.clear();
   for (const auto& entry : mAsyncCompositables) {
     wr::PipelineId pipelineId = wr::AsPipelineId(entry.first);
     RefPtr<WebRenderImageHost> host = entry.second;
     host->ClearWrBridge();
     mAsyncImageManager->RemoveAsyncImagePipeline(pipelineId, txn);
+    txn.RemovePipeline(pipelineId);
   }
   mAsyncCompositables.clear();
   for (const auto& entry : mSharedSurfaceIds) {
     wr::ExternalImageId id = wr::ToExternalImageId(entry);
     mAsyncImageManager->HoldExternalImage(mPipelineId, mWrEpoch, id);
   }
   mSharedSurfaceIds.clear();