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);