Fix reboot loop when "password to boot" is enabled on ...
a non english locale.
Bug 28607673
Change-Id: I316f348305238616e8254bb878b66099015a3793
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 2c46fbf..94118e6 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -18220,8 +18220,11 @@
// Tell the shortcut manager that the system locale changed. It needs to know
// it before any other apps receive ACTION_LOCALE_CHANGED, which is why
// we "push" from here, rather than having the service listen to the broadcast.
- LocalServices.getService(ShortcutServiceInternal.class)
- .onSystemLocaleChangedNoLock();
+ final ShortcutServiceInternal shortcutService =
+ LocalServices.getService(ShortcutServiceInternal.class);
+ if (shortcutService != null) {
+ shortcutService.onSystemLocaleChangedNoLock();
+ }
intent = new Intent(Intent.ACTION_LOCALE_CHANGED);
intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);