Loading services/core/java/com/android/server/wm/SurfaceAnimationRunner.java +13 −2 Original line number Diff line number Diff line Loading @@ -62,6 +62,8 @@ import java.util.function.Supplier; */ class SurfaceAnimationRunner { private static final String TAG = SurfaceAnimationRunner.class.getSimpleName(); private final Object mLock = new Object(); /** Loading Loading @@ -185,6 +187,16 @@ class SurfaceAnimationRunner { // We must wait for t to be committed since otherwise the leash doesn't have the // windows we want to screenshot and extend as children. t.addTransactionCommittedListener(mEdgeExtensionExecutor, () -> { if (!animationLeash.isValid()) { Log.e(TAG, "Animation leash is not valid"); synchronized (mEdgeExtensionLock) { mEdgeExtensions.remove(animationLeash); } synchronized (mLock) { mPreProcessingAnimations.remove(animationLeash); } return; } final WindowAnimationSpec animationSpec = a.asWindowAnimationSpec(); final Transaction edgeExtensionCreationTransaction = new Transaction(); Loading Loading @@ -449,8 +461,7 @@ class SurfaceAnimationRunner { // The leash we are trying to screenshot may have been removed by this point, which is // likely the reason for ending up with a null edgeBuffer, in which case we just want to // return and do nothing. Log.e("SurfaceAnimationRunner", "Failed to create edge extension - " + "edge buffer is null"); Log.e(TAG, "Failed to create edge extension - edge buffer is null"); return; } Loading Loading
services/core/java/com/android/server/wm/SurfaceAnimationRunner.java +13 −2 Original line number Diff line number Diff line Loading @@ -62,6 +62,8 @@ import java.util.function.Supplier; */ class SurfaceAnimationRunner { private static final String TAG = SurfaceAnimationRunner.class.getSimpleName(); private final Object mLock = new Object(); /** Loading Loading @@ -185,6 +187,16 @@ class SurfaceAnimationRunner { // We must wait for t to be committed since otherwise the leash doesn't have the // windows we want to screenshot and extend as children. t.addTransactionCommittedListener(mEdgeExtensionExecutor, () -> { if (!animationLeash.isValid()) { Log.e(TAG, "Animation leash is not valid"); synchronized (mEdgeExtensionLock) { mEdgeExtensions.remove(animationLeash); } synchronized (mLock) { mPreProcessingAnimations.remove(animationLeash); } return; } final WindowAnimationSpec animationSpec = a.asWindowAnimationSpec(); final Transaction edgeExtensionCreationTransaction = new Transaction(); Loading Loading @@ -449,8 +461,7 @@ class SurfaceAnimationRunner { // The leash we are trying to screenshot may have been removed by this point, which is // likely the reason for ending up with a null edgeBuffer, in which case we just want to // return and do nothing. Log.e("SurfaceAnimationRunner", "Failed to create edge extension - " + "edge buffer is null"); Log.e(TAG, "Failed to create edge extension - edge buffer is null"); return; } Loading