jdk/src/java.base/share/classes/java/util/ResourceBundle.java
changeset 42930 b878b7b2788e
parent 42769 c6ee006baceb
child 43182 66e6655abfde
--- a/jdk/src/java.base/share/classes/java/util/ResourceBundle.java	Thu Dec 22 03:35:44 2016 +0000
+++ b/jdk/src/java.base/share/classes/java/util/ResourceBundle.java	Thu Dec 22 06:05:31 2016 +0000
@@ -2942,17 +2942,6 @@
                             script = "Hans";
                             break;
                         }
-                    } else if (script.length() > 0 && region.length() == 0) {
-                        // Supply region(country) for users who still package Chinese
-                        // bundles using old convension.
-                        switch (script) {
-                        case "Hans":
-                            region = "CN";
-                            break;
-                        case "Hant":
-                            region = "TW";
-                            break;
-                        }
                     }
                 }
 
@@ -2983,6 +2972,21 @@
                 }
                 if (script.length() > 0) {
                     list.add(Locale.getInstance(language, script, "", "", null));
+                    // Special handling for Chinese
+                    if (language.equals("zh")) {
+                        if (region.length() == 0) {
+                            // Supply region(country) for users who still package Chinese
+                            // bundles using old convension.
+                            switch (script) {
+                                case "Hans":
+                                    region = "CN";
+                                    break;
+                                case "Hant":
+                                    region = "TW";
+                                    break;
+                            }
+                        }
+                    }
 
                     // With script, after truncating variant, region and script,
                     // start over without script.