diff options
-rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 30 |
1 files changed, 5 insertions, 25 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index a437761..c4718b8 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -16275,10 +16275,11 @@ public final class ActivityManagerService extends ActivityManagerNative EventLog.writeEvent(EventLogTags.CONFIGURATION_CHANGED, changes); - if (values.locale != null && !initLocale) { - saveLocaleLocked(values.locale, - !values.locale.equals(mConfiguration.locale), - values.userSetLocale); + if (!initLocale && values.locale != null && values.userSetLocale) { + final String languageTag = values.locale.toLanguageTag(); + SystemProperties.set("persist.sys.locale", languageTag); + mHandler.sendMessage(mHandler.obtainMessage(SEND_LOCALE_TO_MOUNT_DAEMON_MSG, + values.locale)); } mConfigurationSeq++; @@ -16385,27 +16386,6 @@ public final class ActivityManagerService extends ActivityManagerNative && config.navigation == Configuration.NAVIGATION_NONAV); } - /** - * Save the locale. You must be inside a synchronized (this) block. - */ - private void saveLocaleLocked(Locale l, boolean isDiff, boolean isPersist) { - final String languageTag = l.toLanguageTag(); - if (isDiff) { - SystemProperties.set("user.locale", languageTag); - - // TODO: Who uses these ? There are no references to these system - // properties in documents or code. Did the author intend to call - // System.setProperty() instead ? Even that wouldn't have any effect. - SystemProperties.set("user.language", l.getLanguage()); - SystemProperties.set("user.region", l.getCountry()); - } - - if (isPersist) { - SystemProperties.set("persist.sys.locale", languageTag); - mHandler.sendMessage(mHandler.obtainMessage(SEND_LOCALE_TO_MOUNT_DAEMON_MSG, l)); - } - } - @Override public boolean shouldUpRecreateTask(IBinder token, String destAffinity) { synchronized (this) { |