Fix mPreviouslyPresentedLayerStacks leak for bufferless layers
Fix: 295344852
Test: presubmit
Change-Id: Ib906c9002c56b8a7398cfcc2ede4a07be7484ce0
diff --git a/services/surfaceflinger/Layer.cpp b/services/surfaceflinger/Layer.cpp
index 0c1c014..da87e8e 100644
--- a/services/surfaceflinger/Layer.cpp
+++ b/services/surfaceflinger/Layer.cpp
@@ -2941,7 +2941,9 @@
ch->previousReleaseFences.emplace_back(std::move(futureFenceResult));
ch->name = mName;
}
- mPreviouslyPresentedLayerStacks.push_back(layerStack);
+ if (mBufferInfo.mBuffer) {
+ mPreviouslyPresentedLayerStacks.push_back(layerStack);
+ }
}
void Layer::onSurfaceFrameCreated(