From e1832f8943f53a50dd6cd50482753779e12cd31a Mon Sep 17 00:00:00 2001 From: Samuel Tardieu Date: Sun, 13 Apr 2014 16:50:48 +0200 Subject: work on #3727: limit the number of waypoints that can be loaded Limit the number of waypoints that can be loaded from the database to two times the number of caches under which the waypoints are not shown anymore. --- main/src/cgeo/geocaching/DataStore.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'main/src/cgeo/geocaching/DataStore.java') diff --git a/main/src/cgeo/geocaching/DataStore.java b/main/src/cgeo/geocaching/DataStore.java index ee6c9ef..2c0404d 100644 --- a/main/src/cgeo/geocaching/DataStore.java +++ b/main/src/cgeo/geocaching/DataStore.java @@ -2891,7 +2891,9 @@ public class DataStore { for (int i = 0; i < WAYPOINT_COLUMNS.length; i++) { query.append(i > 0 ? ", " : "").append(dbTableWaypoints).append('.').append(WAYPOINT_COLUMNS[i]).append(' '); } - query.append(" FROM ").append(dbTableWaypoints).append(", ").append(dbTableCaches).append(" WHERE ").append(dbTableWaypoints).append(".geocode == ").append(dbTableCaches).append(".geocode and ").append(where); + query.append(" FROM ").append(dbTableWaypoints).append(", ").append(dbTableCaches).append(" WHERE ").append(dbTableWaypoints) + .append(".geocode == ").append(dbTableCaches).append(".geocode and ").append(where) + .append(" LIMIT " + (Settings.SHOW_WP_THRESHOLD_MAX * 2)); // Hardcoded limit to avoid memory overflow return cursorToColl(database.rawQuery(query.toString(), null), new HashSet(), new Func1() { @Override -- cgit v1.1