diff options
Diffstat (limited to 'libs/gui/BLASTBufferQueue.cpp')
| -rw-r--r-- | libs/gui/BLASTBufferQueue.cpp | 8 | 
1 files changed, 3 insertions, 5 deletions
| diff --git a/libs/gui/BLASTBufferQueue.cpp b/libs/gui/BLASTBufferQueue.cpp index 379b090c5b..406272c479 100644 --- a/libs/gui/BLASTBufferQueue.cpp +++ b/libs/gui/BLASTBufferQueue.cpp @@ -456,10 +456,10 @@ void BLASTBufferQueue::processNextBufferLocked(bool useNextTransaction) {      // Ensure BLASTBufferQueue stays alive until we receive the transaction complete callback.      incStrong((void*)transactionCallbackThunk); +    const bool sizeHasChanged = mRequestedSize != mSize; +    mSize = mRequestedSize; +    const bool updateDestinationFrame = sizeHasChanged || !mLastBufferInfo.hasBuffer;      Rect crop = computeCrop(bufferItem); -    const bool updateDestinationFrame = -            bufferItem.mScalingMode == NATIVE_WINDOW_SCALING_MODE_FREEZE || -            !mLastBufferInfo.hasBuffer;      mLastBufferInfo.update(true /* hasBuffer */, bufferItem.mGraphicBuffer->getWidth(),                             bufferItem.mGraphicBuffer->getHeight(), bufferItem.mTransform,                             bufferItem.mScalingMode, crop); @@ -572,7 +572,6 @@ 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;      } @@ -586,7 +585,6 @@ bool BLASTBufferQueue::rejectBuffer(const BufferItem& item) {      }      ui::Size bufferSize(bufWidth, bufHeight);      if (mRequestedSize != mSize && mRequestedSize == bufferSize) { -        mSize = mRequestedSize;          return false;      } |