File tree Expand file tree Collapse file tree 2 files changed +10
-1
lines changed
main/java/ch/bailu/aat_lib/file/xml/parser/util
test/kotlin/ch/bailu/aat_lib/file/xml/parser/gpx Expand file tree Collapse file tree 2 files changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -5,6 +5,11 @@ import java.util.Calendar
55import java.util.GregorianCalendar
66import java.util.TimeZone
77
8+ /* *
9+ * Scan ISO-8601 date-time in UTC. This is standard for GPX.
10+ * If the UTC extension is missing local time is assumed.
11+ * This is to support old non-standard GPX files from AAT.
12+ */
813class DateScanner (var timeMillis : Long ) : AbsScanner() {
914 private var localOffsetMillis = 0L
1015 private val minute: IntegerScanner = IntegerScanner ()
@@ -31,6 +36,7 @@ class DateScanner(var timeMillis: Long) : AbsScanner() {
3136 if (dateNeedsRescan) scanDate()
3237 if (stream.haveA(' T' .code)) scanTime(stream)
3338 if (! stream.haveA(' Z' .code)) {
39+ // Hack to support non-standard GPX files
3440 timeMillis - = localOffsetMillis
3541 }
3642 }
Original file line number Diff line number Diff line change @@ -51,7 +51,10 @@ class TestGpxListReaderXml {
5151
5252 Assertions .assertEquals(47.791209 , second.getLatitude())
5353 Assertions .assertEquals(7.901157 , second.getLongitude())
54- Assertions .assertEquals(1711801089000 , second.getTimeStamp())
54+
55+ // Because of the missing UTC ending this will fall back to local time.
56+ // This can't be tested reliable because value is system dependant.
57+ // Assertions.assertEquals(1711801089000, second.getTimeStamp())
5558 Assertions .assertEquals(544.0f , second.getAltitude())
5659 }
5760
You can’t perform that action at this time.
0 commit comments