diff options
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowProcessController.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/WindowProcessController.java b/services/core/java/com/android/server/wm/WindowProcessController.java index b6b36c716a53..2957504ecff5 100644 --- a/services/core/java/com/android/server/wm/WindowProcessController.java +++ b/services/core/java/com/android/server/wm/WindowProcessController.java @@ -1926,7 +1926,12 @@ public class WindowProcessController extends ConfigurationContainer<Configuratio // showing. // If the configuration has been overridden by previous activity, empty it. mIsActivityConfigOverrideAllowed = false; - unregisterActivityConfigurationListener(); + // The call to `onServiceStarted` is not guarded with WM lock. + mAtm.mH.post(() -> { + synchronized (mAtm.mGlobalLock) { + unregisterActivityConfigurationListener(); + } + }); break; default: break; |