diff options
| -rw-r--r-- | main/src/cgeo/geocaching/cgData.java | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/main/src/cgeo/geocaching/cgData.java b/main/src/cgeo/geocaching/cgData.java index b080f7c..94eb3fd 100644 --- a/main/src/cgeo/geocaching/cgData.java +++ b/main/src/cgeo/geocaching/cgData.java @@ -1160,6 +1160,7 @@ public class cgData { private void saveOriginalWaypointsWithoutTransaction(final cgCache cache) { String geocode = cache.getGeocode(); + database.delete(dbTableWaypoints, "geocode = ? and type <> ? and own = 0", new String[]{geocode, "own"}); List<cgWaypoint> waypoints = cache.getWaypoints(); if (CollectionUtils.isNotEmpty(waypoints)) { @@ -1182,12 +1183,8 @@ public class cgData { values.put("note", oneWaypoint.getNote()); values.put("own", oneWaypoint.isUserDefined() ? 1 : 0); - if (oneWaypoint.getId() < 0) { - final long rowId = database.insert(dbTableWaypoints, null, values); - oneWaypoint.setId((int) rowId); - } else { - database.update(dbTableWaypoints, values, "_id = ?", new String[] { Integer.toString(oneWaypoint.getId(), 10) }); - } + final long rowId = database.insert(dbTableWaypoints, null, values); + oneWaypoint.setId((int) rowId); } } } |
