diff --git a/src/main/java/de/dennisguse/opentracks/data/ContentProviderUtils.java b/src/main/java/de/dennisguse/opentracks/data/ContentProviderUtils.java index 19bab7529..b25e8db69 100644 --- a/src/main/java/de/dennisguse/opentracks/data/ContentProviderUtils.java +++ b/src/main/java/de/dennisguse/opentracks/data/ContentProviderUtils.java @@ -704,11 +704,18 @@ public class ContentProviderUtils { * * @param trackId the track id */ - @Deprecated + @VisibleForTesting + @Deprecated // Use TrackPointIterator to fetch all TrackPoints and use the last. public TrackPoint getLastValidTrackPoint(Track.Id trackId) { String selection = TrackPointsColumns._ID + "=(SELECT MAX(" + TrackPointsColumns._ID + ") FROM " + TrackPointsColumns.TABLE_NAME + " WHERE " + TrackPointsColumns.TRACKID + "=? AND " + TrackPointsColumns.TYPE + " IN (" + TrackPoint.Type.SEGMENT_START_AUTOMATIC.type_db + "," + TrackPoint.Type.TRACKPOINT.type_db + "))"; String[] selectionArgs = new String[]{Long.toString(trackId.id())}; - return findTrackPointBy(selection, selectionArgs); + + try (Cursor cursor = getTrackPointCursor(null, selection, selectionArgs, TrackPointsColumns._ID)) { + if (cursor != null && cursor.moveToNext()) { + return createTrackPoint(cursor); + } + } + return null; } /** @@ -785,16 +792,6 @@ public class ContentProviderUtils { return new TrackPointIterator(this, trackId, startTrackPointId); } - @Deprecated - private TrackPoint findTrackPointBy(String selection, String[] selectionArgs) { - try (Cursor cursor = getTrackPointCursor(null, selection, selectionArgs, TrackPointsColumns._ID)) { - if (cursor != null && cursor.moveToNext()) { - return createTrackPoint(cursor); - } - } - return null; - } - /** * Gets a trackPoint cursor. *