summaryrefslogtreecommitdiff
path: root/altoslib
diff options
context:
space:
mode:
authorBdale Garbee <bdale@gag.com>2017-09-18 16:01:43 -0600
committerBdale Garbee <bdale@gag.com>2017-09-18 16:01:43 -0600
commit6e4c104c28952f2010c7b1cbc9ce59e148ab2d8f (patch)
treeb62b70697d5873aa2f3d37d09e8ccfb1ae779d6a /altoslib
parent63eeaada85cb9ddccb0fa9b2d751cc8f46399d9c (diff)
parent4f2cbe0c537c9f417aae310cc3b89f84e0915103 (diff)
Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
Diffstat (limited to 'altoslib')
-rw-r--r--altoslib/AltosFlightStats.java20
-rw-r--r--altoslib/AltosTimeSeries.java8
2 files changed, 18 insertions, 10 deletions
diff --git a/altoslib/AltosFlightStats.java b/altoslib/AltosFlightStats.java
index c2e4e2a3..ea1a9675 100644
--- a/altoslib/AltosFlightStats.java
+++ b/altoslib/AltosFlightStats.java
@@ -212,8 +212,11 @@ public class AltosFlightStats {
add_times(series, (int) prev.value, prev.time, state.time);
prev = state;
}
- if (prev != null)
- add_times(series, (int) prev.value, prev.time, series.accel_series.last().time);
+ if (prev != null) {
+ AltosTimeValue last_accel = series.accel_series.last();
+ if (last_accel != null)
+ add_times(series, (int) prev.value, prev.time, last_accel.time);
+ }
}
for (int s = 0; s <= AltosLib.ao_flight_invalid; s++) {
@@ -245,14 +248,15 @@ public class AltosFlightStats {
has_gps = true;
lat = pad_lat = gps.lat;
lon = pad_lon = gps.lon;
- for (AltosGPSTimeValue gtv : series.gps_series) {
- gps = gtv.gps;
- if (gps.locked && gps.nsat >= 4) {
- lat = gps.lat;
- lon = gps.lon;
+ if (series.gps_series != null) {
+ for (AltosGPSTimeValue gtv : series.gps_series) {
+ gps = gtv.gps;
+ if (gps.locked && gps.nsat >= 4) {
+ lat = gps.lat;
+ lon = gps.lon;
+ }
}
}
-
}
max_height = AltosLib.MISSING;
diff --git a/altoslib/AltosTimeSeries.java b/altoslib/AltosTimeSeries.java
index b3c432fc..9f3b4d80 100644
--- a/altoslib/AltosTimeSeries.java
+++ b/altoslib/AltosTimeSeries.java
@@ -151,11 +151,15 @@ public class AltosTimeSeries implements Iterable<AltosTimeValue>, Comparable<Alt
}
public AltosTimeValue first() {
- return values.get(0);
+ if (values.size() > 0)
+ return values.get(0);
+ return null;
}
public AltosTimeValue last() {
- return values.get(values.size() - 1);
+ if (values.size() > 0)
+ return values.get(values.size() - 1);
+ return null;
}
public double average() {