diff options
| author | 2023-10-13 23:44:46 +0000 | |
|---|---|---|
| committer | 2023-10-13 23:46:20 +0000 | |
| commit | 316b7f443541f6220ef6b51d8fa5d63ec72736f0 (patch) | |
| tree | 159ddd41227e5e450753465a295f7e348048f227 | |
| parent | 2585847467daca6d79a8df0b2182fa635be21c4c (diff) | |
Fix mPreviouslyPresentedLayerStacks leak for bufferless layers
Fix: 295344852
Test: presubmit
Change-Id: Ib906c9002c56b8a7398cfcc2ede4a07be7484ce0
| -rw-r--r-- | services/surfaceflinger/Layer.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/services/surfaceflinger/Layer.cpp b/services/surfaceflinger/Layer.cpp index 0c1c014640..da87e8e0fc 100644 --- a/services/surfaceflinger/Layer.cpp +++ b/services/surfaceflinger/Layer.cpp @@ -2941,7 +2941,9 @@ void Layer::onLayerDisplayed(ftl::SharedFuture<FenceResult> futureFenceResult, ch->previousReleaseFences.emplace_back(std::move(futureFenceResult)); ch->name = mName; } - mPreviouslyPresentedLayerStacks.push_back(layerStack); + if (mBufferInfo.mBuffer) { + mPreviouslyPresentedLayerStacks.push_back(layerStack); + } } void Layer::onSurfaceFrameCreated( |