From 8657504d0ae610b4c61c4b12337dc81d7de28bf1 Mon Sep 17 00:00:00 2001 From: Santos Cordon Date: Thu, 17 Mar 2022 21:07:06 +0000 Subject: [PATCH] Move call to captureDisplay outside of the synchronized block. Bug: 224509101 Test: atest com.android.server.display Test: manually ensure the fade-to-black feature still works. Change-Id: I3ad87d990c16e242e1613116ec2c30fd9d2b879e --- .../server/display/DisplayManagerService.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/services/core/java/com/android/server/display/DisplayManagerService.java b/services/core/java/com/android/server/display/DisplayManagerService.java index 932717a4a39df..5a105f551ab2d 100644 --- a/services/core/java/com/android/server/display/DisplayManagerService.java +++ b/services/core/java/com/android/server/display/DisplayManagerService.java @@ -2084,6 +2084,7 @@ public final class DisplayManagerService extends SystemService { } private SurfaceControl.ScreenshotHardwareBuffer systemScreenshotInternal(int displayId) { + final SurfaceControl.DisplayCaptureArgs captureArgs; synchronized (mSyncRoot) { final IBinder token = getDisplayToken(displayId); if (token == null) { @@ -2095,15 +2096,14 @@ public final class DisplayManagerService extends SystemService { } final DisplayInfo displayInfo = logicalDisplay.getDisplayInfoLocked(); - final SurfaceControl.DisplayCaptureArgs captureArgs = - new SurfaceControl.DisplayCaptureArgs.Builder(token) - .setSize(displayInfo.getNaturalWidth(), displayInfo.getNaturalHeight()) - .setUseIdentityTransform(true) - .setCaptureSecureLayers(true) - .setAllowProtected(true) - .build(); - return SurfaceControl.captureDisplay(captureArgs); + captureArgs = new SurfaceControl.DisplayCaptureArgs.Builder(token) + .setSize(displayInfo.getNaturalWidth(), displayInfo.getNaturalHeight()) + .setUseIdentityTransform(true) + .setCaptureSecureLayers(true) + .setAllowProtected(true) + .build(); } + return SurfaceControl.captureDisplay(captureArgs); } private SurfaceControl.ScreenshotHardwareBuffer userScreenshotInternal(int displayId) {