From 33100284a8b13743cb617cd5e05ea8d8cdc78482 Mon Sep 17 00:00:00 2001 From: Hongguang Chen Date: Thu, 15 Apr 2021 18:36:05 -0700 Subject: BlastBufferQueue: Update layer size before processing it. We may fail to update mSize if the scaling mode changes from freeze to not-freeze right after the requested size changes. Bug: 178622186 Test: manual and winscope dump Change-Id: Iab4b643c5aee803450d138acc21a8d5da51dbe6a --- libs/gui/BLASTBufferQueue.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'libs/gui/BLASTBufferQueue.cpp') diff --git a/libs/gui/BLASTBufferQueue.cpp b/libs/gui/BLASTBufferQueue.cpp index e5afd408a9..476617db48 100644 --- a/libs/gui/BLASTBufferQueue.cpp +++ b/libs/gui/BLASTBufferQueue.cpp @@ -498,6 +498,7 @@ void BLASTBufferQueue::setNextTransaction(SurfaceComposerClient::Transaction* t) bool BLASTBufferQueue::rejectBuffer(const BufferItem& item) { if (item.mScalingMode != NATIVE_WINDOW_SCALING_MODE_FREEZE) { + mSize = mRequestedSize; // Only reject buffers if scaling mode is freeze. return false; } -- cgit v1.2.3-59-g8ed1b