aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--java/src/com/android/inputmethod/latin/LocaleUtils.java5
-rw-r--r--tests/src/com/android/inputmethod/latin/SubtypeLocaleTests.java6
2 files changed, 6 insertions, 5 deletions
diff --git a/java/src/com/android/inputmethod/latin/LocaleUtils.java b/java/src/com/android/inputmethod/latin/LocaleUtils.java
index fcf727041..5fde8158a 100644
--- a/java/src/com/android/inputmethod/latin/LocaleUtils.java
+++ b/java/src/com/android/inputmethod/latin/LocaleUtils.java
@@ -180,14 +180,15 @@ public final class LocaleUtils {
synchronized (sLockForRunInLocale) {
final Configuration conf = res.getConfiguration();
final Locale oldLocale = conf.locale;
+ final boolean needsChange = (newLocale != null && !newLocale.equals(oldLocale));
try {
- if (newLocale != null && !newLocale.equals(oldLocale)) {
+ if (needsChange) {
conf.locale = newLocale;
res.updateConfiguration(conf, null);
}
return job(res);
} finally {
- if (newLocale != null && !newLocale.equals(oldLocale)) {
+ if (needsChange) {
conf.locale = oldLocale;
res.updateConfiguration(conf, null);
}
diff --git a/tests/src/com/android/inputmethod/latin/SubtypeLocaleTests.java b/tests/src/com/android/inputmethod/latin/SubtypeLocaleTests.java
index 1e2036662..abfaf3062 100644
--- a/tests/src/com/android/inputmethod/latin/SubtypeLocaleTests.java
+++ b/tests/src/com/android/inputmethod/latin/SubtypeLocaleTests.java
@@ -189,7 +189,7 @@ public class SubtypeLocaleTests extends AndroidTestCase {
SubtypeLocale.getSubtypeDisplayName(FR_CA));
assertEquals("de ", "Deutsch",
SubtypeLocale.getSubtypeDisplayName(DE));
- assertEquals("zz ", "Pas de langue (QWERTY)",
+ assertEquals("zz ", "Aucune langue (QWERTY)",
SubtypeLocale.getSubtypeDisplayName(ZZ));
return null;
}
@@ -301,7 +301,7 @@ public class SubtypeLocaleTests extends AndroidTestCase {
// fr azerty F Français
// fr_CA qwerty F Français (Canada)
// de qwertz F Allemand
- // zz qwerty F Pas de langue (QWERTY)
+ // zz qwerty F Aucune langue (QWERTY)
// fr qwertz T Français (QWERTZ)
// de qwerty T Allemand (QWERTY)
// en_US azerty T Anglais (États-Unis) (AZERTY) exception
@@ -325,7 +325,7 @@ public class SubtypeLocaleTests extends AndroidTestCase {
SubtypeLocale.getSubtypeDisplayNameInSystemLocale(FR_CA));
assertEquals("de ", "Allemand",
SubtypeLocale.getSubtypeDisplayNameInSystemLocale(DE));
- assertEquals("zz ", "Pas de langue (QWERTY)",
+ assertEquals("zz ", "Aucune langue (QWERTY)",
SubtypeLocale.getSubtypeDisplayNameInSystemLocale(ZZ));
return null;
}