From 815b6a3cf10d8275b9bd7f02d29895973aee0e5e Mon Sep 17 00:00:00 2001 From: Dennis Guse Date: Fri, 5 Mar 2021 18:31:09 +0100 Subject: [PATCH] StatisticsRecordingFragment: set speed=0 when TrackPoint is outdated. --- .../StatisticsRecordingFragment.java | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/src/main/java/de/dennisguse/opentracks/fragments/StatisticsRecordingFragment.java b/src/main/java/de/dennisguse/opentracks/fragments/StatisticsRecordingFragment.java index 9d8d2d9e9..ddfff026d 100644 --- a/src/main/java/de/dennisguse/opentracks/fragments/StatisticsRecordingFragment.java +++ b/src/main/java/de/dennisguse/opentracks/fragments/StatisticsRecordingFragment.java @@ -111,6 +111,12 @@ public class StatisticsRecordingFragment extends Fragment implements TrackDataLi public void run() { if (isResumed() && isSelectedTrackRecording()) { if (!isSelectedTrackPaused() && lastTrackStatistics != null) { + synchronized (this) { + if (lastTrackPoint != null && lastTrackPoint.hasLocation() && !lastTrackPoint.isRecent()) { + lastTrackPoint = null; + setLocationValues(); + } + } updateTotalTime(); updateSensorDataUI(); } @@ -222,16 +228,18 @@ public class StatisticsRecordingFragment extends Fragment implements TrackDataLi if (isResumed()) { getActivity().runOnUiThread(() -> { if (isResumed()) { - this.lastTrackPoint = newLastTrackPoint; + synchronized (this) { + this.lastTrackPoint = newLastTrackPoint; - if (!isSelectedTrackRecording() || isSelectedTrackPaused()) { - this.lastTrackPoint = null; - } + if (!isSelectedTrackRecording() || isSelectedTrackPaused()) { + this.lastTrackPoint = null; + } - if (this.lastTrackPoint != null && this.lastTrackPoint.hasLocation() && !this.lastTrackPoint.isRecent()) { - this.lastTrackPoint = null; + if (this.lastTrackPoint != null && this.lastTrackPoint.hasLocation() && !this.lastTrackPoint.isRecent()) { + this.lastTrackPoint = null; + } + setLocationValues(); } - setLocationValues(); } }); }