forked from upstream-mirrors/OpenTracks
VoiceAnnouncementManager should close TrackPointIterator to avoid memory leaks.
This commit is contained in:
+9
-9
@@ -149,16 +149,16 @@ public class VoiceAnnouncementManager implements SharedPreferences.OnSharedPrefe
|
|||||||
startTrackPointId = null;
|
startTrackPointId = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO wrap in try {}
|
try (AutoCloseableIterator<TrackPoint> trackPointIterator = contentProviderUtils.getTrackPointLocationIterator(track.getId(), startTrackPointId)) {
|
||||||
AutoCloseableIterator<TrackPoint> trackPointIterator = contentProviderUtils.getTrackPointLocationIterator(track.getId(), startTrackPointId);
|
startTrackPointId = intervalStatistics.addTrackPoints(trackPointIterator);
|
||||||
startTrackPointId = intervalStatistics.addTrackPoints(trackPointIterator);
|
IntervalStatisticsUpdater.Interval lastInterval = intervalStatistics.getLastInterval();
|
||||||
IntervalStatisticsUpdater.Interval lastInterval = intervalStatistics.getLastInterval();
|
SensorStatistics sensorStatistics = null;
|
||||||
SensorStatistics sensorStatistics = null;
|
if (track.getId() != null) {
|
||||||
if (track.getId() != null) {
|
sensorStatistics = contentProviderUtils.getSensorStats(track.getId());
|
||||||
sensorStatistics = contentProviderUtils.getSensorStats(track.getId());
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return VoiceAnnouncementUtils.createStatistics(context, track, sensorDataSet, PreferencesUtils.getUnitSystem(), PreferencesUtils.isReportSpeed(track), lastInterval, sensorStatistics);
|
return VoiceAnnouncementUtils.createStatistics(context, track, sensorDataSet, PreferencesUtils.getUnitSystem(), PreferencesUtils.isReportSpeed(track), lastInterval, sensorStatistics);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void stop() {
|
public void stop() {
|
||||||
|
|||||||
Reference in New Issue
Block a user