summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Mariia Sandrikova <mariiasand@google.com> 2022-06-09 12:28:51 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2022-06-09 12:28:51 +0000
commitd06bb41f1bf15402c1296be45d76b9ead40f1eab (patch)
tree3aafcc6b2f74804d7a46f8a6d3363361efc37ad8
parente4cec94bc0ac276b28fe2e83c716844d9e627280 (diff)
parent29128c775438fd494a1a346f8ff26b9871ce3266 (diff)
Merge "Fix NPE caused by wrong initialization order." into tm-qpr-dev
-rw-r--r--services/core/java/com/android/server/wm/ActivityRecord.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java
index f1f091a665e4..61a2323437d5 100644
--- a/services/core/java/com/android/server/wm/ActivityRecord.java
+++ b/services/core/java/com/android/server/wm/ActivityRecord.java
@@ -2068,6 +2068,12 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
launchMode = aInfo.launchMode;
+ // Don't move below setActivityType since it triggers onConfigurationChange ->
+ // resolveOverrideConfiguration that requires having mLetterboxUiController initialised.
+ mLetterboxUiController = new LetterboxUiController(mWmService, this);
+ mCameraCompatControlEnabled = mWmService.mContext.getResources()
+ .getBoolean(R.bool.config_isCameraCompatControlForStretchedIssuesEnabled);
+
setActivityType(_componentSpecified, _launchedFromUid, _intent, options, sourceRecord);
immersive = (aInfo.flags & FLAG_IMMERSIVE) != 0;
@@ -2096,9 +2102,6 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
mPersistentState = persistentState;
taskDescription = _taskDescription;
- mLetterboxUiController = new LetterboxUiController(mWmService, this);
- mCameraCompatControlEnabled = mWmService.mContext.getResources()
- .getBoolean(R.bool.config_isCameraCompatControlForStretchedIssuesEnabled);
shouldDockBigOverlays = mWmService.mContext.getResources()
.getBoolean(R.bool.config_dockBigOverlayWindows);