From b4fe2d73cf724992a95c29dd91b0bfb7988b463b Mon Sep 17 00:00:00 2001 From: Sunny Goyal Date: Thu, 12 Jan 2023 11:41:29 -0800 Subject: [PATCH] Unblocking surface sync if the viewroot dies before traversal can happen Bug: 260135164 Test: Verified the code flow as the cause of bug Change-Id: Ie168b7cb772f6ec89063a42a7b15e7d5342f5bd3 Merged-in: Ie168b7cb772f6ec89063a42a7b15e7d5342f5bd3 --- core/java/android/view/ViewRootImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 8d52d001da2e9..4988362f38dbd 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -8747,6 +8747,10 @@ public final class ViewRootImpl implements ViewParent, mAdded = false; AnimationHandler.removeRequestor(this); } + if (mSyncBufferCallback != null) { + mSyncBufferCallback.onBufferReady(null); + mSyncBufferCallback = null; + } WindowManagerGlobal.getInstance().doRemoveView(this); }