aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapProvider.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapProvider.java')
-rw-r--r--main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapProvider.java14
1 files changed, 9 insertions, 5 deletions
diff --git a/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapProvider.java b/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapProvider.java
index c5ef40c..9f09991 100644
--- a/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapProvider.java
+++ b/main/src/cgeo/geocaching/maps/mapsforge/MapsforgeMapProvider.java
@@ -12,6 +12,7 @@ import cgeo.geocaching.maps.mapsforge.v024.MapsforgeMapItemFactory024;
import cgeo.geocaching.settings.Settings;
import cgeo.geocaching.utils.Log;
+import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
import org.mapsforge.android.maps.mapgenerator.MapGeneratorInternal;
import org.mapsforge.map.reader.MapDatabase;
@@ -59,14 +60,17 @@ public final class MapsforgeMapProvider extends AbstractMapProvider {
if (directory.isDirectory()) {
try {
ArrayList<String> mapFileList = new ArrayList<String>();
- for (File file : directory.listFiles()) {
- if (file.getName().endsWith(".map")) {
- if (MapsforgeMapProvider.isValidMapFile(file.getAbsolutePath())) {
- mapFileList.add(file.getAbsolutePath());
+ final File[] files = directory.listFiles();
+ if (ArrayUtils.isNotEmpty(files)) {
+ for (File file : files) {
+ if (file.getName().endsWith(".map")) {
+ if (MapsforgeMapProvider.isValidMapFile(file.getAbsolutePath())) {
+ mapFileList.add(file.getAbsolutePath());
+ }
}
}
+ Collections.sort(mapFileList, String.CASE_INSENSITIVE_ORDER);
}
- Collections.sort(mapFileList, String.CASE_INSENSITIVE_ORDER);
return mapFileList;
} catch (Exception e) {
Log.e("MapsforgeMapProvider.getOfflineMaps: ", e);