diff options
Diffstat (limited to 'services/surfaceflinger/BufferLayer.cpp')
| -rw-r--r-- | services/surfaceflinger/BufferLayer.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/services/surfaceflinger/BufferLayer.cpp b/services/surfaceflinger/BufferLayer.cpp index 5f90566df2..54cd04fabb 100644 --- a/services/surfaceflinger/BufferLayer.cpp +++ b/services/surfaceflinger/BufferLayer.cpp @@ -294,6 +294,7 @@ void BufferLayer::preparePerFrameCompositionState() { auto* compositionState = editCompositionState(); if (compositionState->sidebandStream.get()) { compositionState->compositionType = Hwc2::IComposerClient::Composition::SIDEBAND; + return; } else { // Normal buffer layers compositionState->hdrMetadata = mBufferInfo.mHdrMetadata; @@ -301,6 +302,12 @@ void BufferLayer::preparePerFrameCompositionState() { ? Hwc2::IComposerClient::Composition::CURSOR : Hwc2::IComposerClient::Composition::DEVICE; } + + compositionState->buffer = mBufferInfo.mBuffer; + compositionState->bufferSlot = (mBufferInfo.mBufferSlot == BufferQueue::INVALID_BUFFER_SLOT) + ? 0 + : mBufferInfo.mBufferSlot; + compositionState->acquireFence = mBufferInfo.mFence; } bool BufferLayer::onPreComposition(nsecs_t refreshStartTime) { |