diff options
| author | 2020-06-29 21:56:16 +0000 | |
|---|---|---|
| committer | 2020-06-29 21:56:16 +0000 | |
| commit | 91ecb004c38a04bbdc08973e90d07b121eca0431 (patch) | |
| tree | abdaaf5ae385a1c4f13636c6674f97c2d063014a | |
| parent | 9fb76d9bba15ac0d90faf57ec3530a240cf7ad76 (diff) | |
| parent | 7f46d57c6799dc64971418de7a2553cabdacf3e2 (diff) | |
Merge "SurfaceView: Clean up deferred-destroy-surface from UI thread" into rvc-dev am: 9464091e72 am: 7f46d57c67
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12010092
Change-Id: I43f2bd15f8c215dcd6f21541179d3c85140fe3ed
| -rw-r--r-- | core/java/android/view/SurfaceView.java | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/core/java/android/view/SurfaceView.java b/core/java/android/view/SurfaceView.java index bb0de120dedc..f937bc9e84a9 100644 --- a/core/java/android/view/SurfaceView.java +++ b/core/java/android/view/SurfaceView.java @@ -471,6 +471,13 @@ public class SurfaceView extends View implements ViewRootImpl.SurfaceChangedCall } private void performDrawFinished() { + if (mDeferredDestroySurfaceControl != null) { + synchronized (mSurfaceControlLock) { + mTmpTransaction.remove(mDeferredDestroySurfaceControl).apply(); + mDeferredDestroySurfaceControl = null; + } + } + if (mPendingReportDraws > 0) { mDrawFinished = true; if (mAttachedToWindow) { @@ -1194,13 +1201,6 @@ public class SurfaceView extends View implements ViewRootImpl.SurfaceChangedCall + "finishedDrawing"); } - if (mDeferredDestroySurfaceControl != null) { - synchronized (mSurfaceControlLock) { - mTmpTransaction.remove(mDeferredDestroySurfaceControl).apply(); - mDeferredDestroySurfaceControl = null; - } - } - runOnUiThread(this::performDrawFinished); } |