diff options
Diffstat (limited to 'services/surfaceflinger/SurfaceFlinger.cpp')
| -rw-r--r-- | services/surfaceflinger/SurfaceFlinger.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index dd1119a5d1..7b4518475c 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -7575,7 +7575,7 @@ ftl::SharedFuture<FenceResult> SurfaceFlinger::captureScreenshot( if (hdrBuffer && gainmapBuffer) { ftl::SharedFuture<FenceResult> hdrRenderFuture = - renderScreenImpl(renderArea.get(), hdrBuffer, regionSampling, grayscale, + renderScreenImpl(std::move(renderArea), hdrBuffer, regionSampling, grayscale, isProtected, captureResults, displayState, layers); captureResults.buffer = buffer->getBuffer(); captureResults.optionalGainMap = gainmapBuffer->getBuffer(); @@ -7599,7 +7599,7 @@ ftl::SharedFuture<FenceResult> SurfaceFlinger::captureScreenshot( }) .share(); } else { - renderFuture = renderScreenImpl(renderArea.get(), buffer, regionSampling, grayscale, + renderFuture = renderScreenImpl(std::move(renderArea), buffer, regionSampling, grayscale, isProtected, captureResults, displayState, layers); } @@ -7620,7 +7620,8 @@ ftl::SharedFuture<FenceResult> SurfaceFlinger::captureScreenshot( } ftl::SharedFuture<FenceResult> SurfaceFlinger::renderScreenImpl( - const RenderArea* renderArea, const std::shared_ptr<renderengine::ExternalTexture>& buffer, + std::unique_ptr<const RenderArea> renderArea, + const std::shared_ptr<renderengine::ExternalTexture>& buffer, bool regionSampling, bool grayscale, bool isProtected, ScreenCaptureResults& captureResults, const std::optional<OutputCompositionState>& displayState, const std::vector<std::pair<Layer*, sp<LayerFE>>>& layers) { |