diff --git a/services/java/com/android/server/power/ElectronBeam.java b/services/java/com/android/server/power/ElectronBeam.java index 4a74149cdcf4a..379e704ab1d9e 100644 --- a/services/java/com/android/server/power/ElectronBeam.java +++ b/services/java/com/android/server/power/ElectronBeam.java @@ -389,10 +389,14 @@ final class ElectronBeam { mTexNamesGenerated = true; } - SurfaceTexture st = new SurfaceTexture(mTexNames[0]); - SurfaceControl.screenshot(SurfaceControl.getBuiltInDisplay( - SurfaceControl.BUILT_IN_DISPLAY_ID_MAIN), - new Surface(st)); + final SurfaceTexture st = new SurfaceTexture(mTexNames[0]); + final Surface s = new Surface(st); + try { + SurfaceControl.screenshot(SurfaceControl.getBuiltInDisplay( + SurfaceControl.BUILT_IN_DISPLAY_ID_MAIN), s); + } finally { + s.release(); + } st.updateTexImage(); st.getTransformMatrix(mTexMatrix);