diff options
Diffstat (limited to 'services/surfaceflinger/SurfaceFlinger.cpp')
| -rw-r--r-- | services/surfaceflinger/SurfaceFlinger.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index 63cafd018f..fa889ee15f 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -1152,10 +1152,6 @@ void SurfaceFlinger::handleMessageRefresh() { mHwc->hasClientComposition(displayDevice->getHwcDisplayId()); } - // Release any buffers which were replaced this frame - for (auto& layer : mLayersWithQueuedFrames) { - layer->releasePendingBuffer(); - } mLayersWithQueuedFrames.clear(); } @@ -1226,6 +1222,11 @@ void SurfaceFlinger::postComposition(nsecs_t refreshStartTime) ATRACE_CALL(); ALOGV("postComposition"); + // Release any buffers which were replaced this frame + for (auto& layer : mLayersWithQueuedFrames) { + layer->releasePendingBuffer(); + } + const LayerVector& layers(mDrawingState.layersSortedByZ); const size_t count = layers.size(); for (size_t i=0 ; i<count ; i++) { |