summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2020-06-17 00:16:36 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2020-06-17 00:16:36 +0000
commit3764cbaac41e6b33346a07b6ca801726b169f357 (patch)
tree8f0e3dc8856a248c6b303e495f5935f4227c0170
parent892d269b65e8e840231af6f84e7c8934a17eee46 (diff)
parentc34aea875a9b868c0654e294a3256cdb051e2d8f (diff)
Merge "SurfaceView: Check ViewRootImpl non-null" into rvc-dev
-rw-r--r--core/java/android/view/SurfaceView.java11
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);
}
/**