From: Keith Packard Date: Sat, 5 Jul 2014 06:20:51 +0000 (-0700) Subject: altoslib: Preserve receiver_serial across state reset for new transmitter X-Git-Tag: 1.4.9.1~20 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=2e99ff2c99f5d4a2fa196507e794c690665ab39e;ds=sidebyside altoslib: Preserve receiver_serial across state reset for new transmitter When the transmitter serial or flight number changes, we re-init the state information, but we want to preserve the receiver serial number so that the log file has that in the name Signed-off-by: Keith Packard --- diff --git a/altoslib/AltosState.java b/altoslib/AltosState.java index e0c00602..5e7908af 100644 --- a/altoslib/AltosState.java +++ b/altoslib/AltosState.java @@ -1024,15 +1024,21 @@ public class AltosState implements Cloneable { firmware_version = version; } + private void re_init() { + int bt = boost_tick; + int rs = receiver_serial; + init(); + boost_tick = bt; + receiver_serial = rs; + } + public void set_flight(int flight) { /* When the flight changes, reset the state */ - if (flight != AltosLib.MISSING && flight != 0) { + if (flight != AltosLib.MISSING) { if (this.flight != AltosLib.MISSING && this.flight != flight) { - int bt = boost_tick; - init(); - boost_tick = bt; + re_init(); } this.flight = flight; } @@ -1043,9 +1049,7 @@ public class AltosState implements Cloneable { if (serial != AltosLib.MISSING) { if (this.serial != AltosLib.MISSING && this.serial != serial) { - int bt = boost_tick; - init(); - boost_tick = bt; + re_init(); } this.serial = serial; }