fix ConcurrentModificationException crash in LocalRepoService

https://stackoverflow.com/a/602660

java.util.ConcurrentModificationException
    at java.util.HashMap$HashIterator.nextEntry(HashMap.java:851)
    at java.util.HashMap$ValueIterator.next(HashMap.java:879)
    at org.fdroid.fdroid.localrepo.LocalRepoManager.copyIconsToRepo(LocalRepoManager.java:296)
    at org.fdroid.fdroid.localrepo.LocalRepoService$1.run(LocalRepoService.java:131)
This commit is contained in:
Hans-Christoph Steiner 2019-05-16 17:41:49 +02:00
parent 910f5da81a
commit 779a0122fd

View File

@ -43,10 +43,10 @@ import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.jar.JarEntry;
import java.util.jar.JarOutputStream;
@ -71,7 +71,7 @@ public final class LocalRepoManager {
"swap-tick-not-done.png",
};
private final Map<String, App> apps = new HashMap<>();
private final Map<String, App> apps = new ConcurrentHashMap<>();
private final SanitizedFile xmlIndexJar;
private final SanitizedFile xmlIndexJarUnsigned;