diff options
| author | 2020-06-17 00:16:36 +0000 | |
|---|---|---|
| committer | 2020-06-17 00:16:36 +0000 | |
| commit | 3764cbaac41e6b33346a07b6ca801726b169f357 (patch) | |
| tree | 8f0e3dc8856a248c6b303e495f5935f4227c0170 | |
| parent | 892d269b65e8e840231af6f84e7c8934a17eee46 (diff) | |
| parent | c34aea875a9b868c0654e294a3256cdb051e2d8f (diff) | |
Merge "SurfaceView: Check ViewRootImpl non-null" into rvc-dev
| -rw-r--r-- | core/java/android/view/SurfaceView.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/core/java/android/view/SurfaceView.java b/core/java/android/view/SurfaceView.java index c098fae11b8c..809a9cfde587 100644 --- a/core/java/android/view/SurfaceView.java +++ b/core/java/android/view/SurfaceView.java @@ -1620,9 +1620,14 @@ public class SurfaceView extends View implements ViewRootImpl.SurfaceChangedCall } private void updateRelativeZ(Transaction t) { - SurfaceControl viewRoot = getViewRootImpl().getSurfaceControl(); - t.setRelativeLayer(mBackgroundControl, viewRoot, Integer.MIN_VALUE); - t.setRelativeLayer(mSurfaceControl, viewRoot, mSubLayer); + final ViewRootImpl viewRoot = getViewRootImpl(); + if (viewRoot == null) { + // We were just detached. + return; + } + final SurfaceControl viewRootControl = viewRoot.getSurfaceControl(); + t.setRelativeLayer(mBackgroundControl, viewRootControl, Integer.MIN_VALUE); + t.setRelativeLayer(mSurfaceControl, viewRootControl, mSubLayer); } /** |