summaryrefslogtreecommitdiff
path: root/altoslib
diff options
context:
space:
mode:
Diffstat (limited to 'altoslib')
-rw-r--r--altoslib/AltosLog.java2
-rw-r--r--altoslib/AltosTelemetryRecordMegaData.java2
-rw-r--r--altoslib/AltosTelemetryRecordRaw.java3
3 files changed, 4 insertions, 3 deletions
diff --git a/altoslib/AltosLog.java b/altoslib/AltosLog.java
index 1c7069ce..aa30190c 100644
--- a/altoslib/AltosLog.java
+++ b/altoslib/AltosLog.java
@@ -85,7 +85,7 @@ public class AltosLog implements Runnable {
continue;
try {
AltosRecord telem = AltosTelemetry.parse(line.line, previous);
- if (telem.serial != 0 && telem.flight != 0 &&
+ if ((telem.seen & AltosRecord.seen_flight) != 0 &&
(telem.serial != serial || telem.flight != flight || log_file == null))
{
close_log_file();
diff --git a/altoslib/AltosTelemetryRecordMegaData.java b/altoslib/AltosTelemetryRecordMegaData.java
index 16a7b80c..98b9f4c5 100644
--- a/altoslib/AltosTelemetryRecordMegaData.java
+++ b/altoslib/AltosTelemetryRecordMegaData.java
@@ -87,7 +87,7 @@ public class AltosTelemetryRecordMegaData extends AltosTelemetryRecordRaw {
next.kalman_speed = speed / 16.0;
next.kalman_height = height;
- next.seen |= AltosRecord.seen_flight | AltosRecord.seen_temp_volt;
+ next.seen |= AltosRecord.seen_sensor | AltosRecord.seen_temp_volt;
return next;
}
diff --git a/altoslib/AltosTelemetryRecordRaw.java b/altoslib/AltosTelemetryRecordRaw.java
index c21da6fc..51dd704d 100644
--- a/altoslib/AltosTelemetryRecordRaw.java
+++ b/altoslib/AltosTelemetryRecordRaw.java
@@ -62,7 +62,8 @@ public class AltosTelemetryRecordRaw extends AltosTelemetryRecord {
public AltosRecord update_state(AltosRecord previous) {
AltosRecord next;
- if (previous != null)
+
+ if (previous != null && previous.serial == serial)
next = previous.clone();
else
next = new AltosRecordNone();