]> gitweb.fperrin.net Git - Dictionary.git/commitdiff
Fix synchronization when scanning for directories.
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 7 Feb 2016 14:24:47 +0000 (15:24 +0100)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 7 Feb 2016 14:24:47 +0000 (15:24 +0100)
src/com/hughes/android/dictionary/DictionaryApplication.java

index d73d6138e7ec519481830283cdc45e02c10d63d9..80bac89a7688b3fbbd0cf8e1509546807f2532d3 100644 (file)
@@ -582,7 +582,7 @@ public class DictionaryApplication extends Application {
             @Override
             public void run() {
                 final DictionaryConfig oldDictionaryConfig = new DictionaryConfig();
-                synchronized (this) {
+                synchronized (DictionaryApplication.this) {
                     oldDictionaryConfig.dictionaryFilesOrdered
                             .addAll(dictionaryConfig.dictionaryFilesOrdered);
                 }
@@ -590,7 +590,7 @@ public class DictionaryApplication extends Application {
                 for (final String uncompressedFilename : oldDictionaryConfig.dictionaryFilesOrdered) {
                     final File dictFile = getPath(uncompressedFilename);
                     final DictionaryInfo dictionaryInfo = Dictionary.getDictionaryInfo(dictFile);
-                    if (dictionaryInfo.isValid()) {
+                    if (dictionaryInfo.isValid() || dictFile.exists()) {
                         newDictionaryConfig.dictionaryFilesOrdered.add(uncompressedFilename);
                         newDictionaryConfig.uncompressedFilenameToDictionaryInfo.put(
                                 uncompressedFilename, dictionaryInfo);
@@ -642,7 +642,7 @@ public class DictionaryApplication extends Application {
                     Log.e(LOG, "Failed persisting dictionary configs", e);
                 }
 
-                synchronized (this) {
+                synchronized (DictionaryApplication.this) {
                     dictionaryConfig = newDictionaryConfig;
                 }