]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/localisation/Language.java
Fix: Always synchronize Language access.
[gigi.git] / src / org / cacert / gigi / localisation / Language.java
index 6a48f5aaacb1cf0ce785ffdb6ee7f4729bb7b8c9..95971120f39df4151e997ff2af1d4694cd1bfcee 100644 (file)
@@ -112,26 +112,23 @@ public class Language {
         if ( !file.exists()) {
             return null;
         }
-        Language lang = langs.get(locale.toString());
-        if (lang == null) {
-            synchronized (Language.class) {
-                lang = langs.get(locale.toString());
-                if (lang != null) {
-                    return lang;
-                }
-                try {
-                    lang = new Language(locale);
-                    langs.put(locale.toString(), lang);
-                } catch (ParserConfigurationException e) {
-                    e.printStackTrace();
-                } catch (IOException e) {
-                    e.printStackTrace();
-                } catch (SAXException e) {
-                    e.printStackTrace();
-                }
+        synchronized (Language.class) {
+            Language lang = langs.get(locale.toString());
+            if (lang != null) {
+                return lang;
+            }
+            try {
+                lang = new Language(locale);
+                langs.put(locale.toString(), lang);
+            } catch (ParserConfigurationException e) {
+                e.printStackTrace();
+            } catch (IOException e) {
+                e.printStackTrace();
+            } catch (SAXException e) {
+                e.printStackTrace();
             }
+            return lang;
         }
-        return lang;
     }
 
     public Locale getLocale() {