From cbd40e683ffb9edbe2c59eea9ef804d16fc1f46e Mon Sep 17 00:00:00 2001 From: Vishnu Nair Date: Mon, 12 Apr 2021 18:31:52 -0700 Subject: Only clear SurfaceControl.Transaction when parcelling as a return value Fix this by have writeToParcel respect PARCELABLE_WRITE_RETURN_VALUE. Fixes: b/185178151 Test: go/wm-smoke Change-Id: Ic146d1bbb9a68be6c4f4fea10c65f81b1b36d760 --- core/java/android/view/ViewRootImpl.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'core/java/android/view/ViewRootImpl.java') diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index e2cf9624e1a5..b12e464d8dae 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -3901,7 +3901,10 @@ public final class ViewRootImpl implements ViewParent, mDrawsNeededToReport = 0; mWindowSession.finishDrawing(mWindow, mSurfaceChangedTransaction); } catch (RemoteException e) { - // Have fun! + Log.e(mTag, "Unable to report draw finished", e); + mSurfaceChangedTransaction.apply(); + } finally { + mSurfaceChangedTransaction.clear(); } } -- cgit v1.2.3