altoslib: Check for valid pad alt before computing GPS height series
[fw/altos] / altoslib / AltosFlightSeries.java
index 4072307b2c7fe823c6e5fe75d0729d39cf49f900..0b60fdf586dcf1c41ecdd60f61960415ee323c5b 100644 (file)
@@ -143,6 +143,10 @@ public class AltosFlightSeries extends AltosDataListener {
        public static final String state_name = "State";
 
        public void set_state(int state) {
+
+               if (state == AltosLib.ao_flight_pad)
+                       return;
+
                if (state_series == null)
                        state_series = add_series(state_name, AltosConvert.state_name);
                else if (this.state == state)
@@ -233,7 +237,7 @@ public class AltosFlightSeries extends AltosDataListener {
                                height_series.add(alt.time, alt.value - ground_altitude);
                }
 
-               if (gps_height == null && cal_data.gps_pad != null && gps_altitude != null) {
+               if (gps_height == null && cal_data.gps_pad != null && cal_data.gps_pad.alt != AltosLib.MISSING && gps_altitude != null) {
                        double gps_ground_altitude = cal_data.gps_pad.alt;
                        gps_height = add_series(gps_height_name, AltosConvert.height);
                        for (AltosTimeValue gps_alt : gps_altitude)