altosuilib: Don't match product_altusmetrum for product_basestation or product_altimeter
authorKeith Packard <keithp@keithp.com>
Mon, 9 Dec 2013 03:59:37 +0000 (19:59 -0800)
committerKeith Packard <keithp@keithp.com>
Mon, 9 Dec 2013 03:59:37 +0000 (19:59 -0800)
It's been years since we've shipped boards configured with
product_altusmetrum, but now we've repurposed that code for the flash
loader. When matching an explicit product, go ahead and also match
altusmetrum so that the flash loader will fit, but when matching
basestation or altimeter, don't as that will avoid popping up the
flight monitor UI at startup when a board is running the boot loader.

Signed-off-by: Keith Packard <keithp@keithp.com>
altosuilib/AltosUSBDevice.java

index 005a3e4987d377c330c12efb3a8c8728acb7cbee..4f329840bdbe88aba6b33305ee43a9e808b8e405 100644 (file)
@@ -68,20 +68,20 @@ public class AltosUSBDevice  extends altos_device implements AltosDevice {
                if (want_product == AltosUILib.product_any)
                        return true;
 
                if (want_product == AltosUILib.product_any)
                        return true;
 
+               int have_product = getProduct();
+
                if (want_product == AltosUILib.product_basestation)
                if (want_product == AltosUILib.product_basestation)
-                       return matchProduct(AltosUILib.product_teledongle) ||
-                               matchProduct(AltosUILib.product_teleterra) ||
-                               matchProduct(AltosUILib.product_telebt) ||
-                               matchProduct(AltosUILib.product_megadongle);
+                       return have_product == AltosUILib.product_teledongle ||
+                               have_product == AltosUILib.product_teleterra ||
+                               have_product == AltosUILib.product_telebt ||
+                               have_product == AltosUILib.product_megadongle;
 
                if (want_product == AltosUILib.product_altimeter)
 
                if (want_product == AltosUILib.product_altimeter)
-                       return matchProduct(AltosUILib.product_telemetrum) ||
-                               matchProduct(AltosUILib.product_telemega) ||
-                               matchProduct(AltosUILib.product_telegps) ||
-                               matchProduct(AltosUILib.product_easymini) ||
-                               matchProduct(AltosUILib.product_telemini);
-
-               int have_product = getProduct();
+                       return have_product == AltosUILib.product_telemetrum ||
+                               have_product == AltosUILib.product_telemega ||
+                               have_product == AltosUILib.product_telegps ||
+                               have_product == AltosUILib.product_easymini ||
+                               have_product == AltosUILib.product_telemini;
 
                if (have_product == AltosUILib.product_altusmetrum)     /* old devices match any request */
                        return true;
 
                if (have_product == AltosUILib.product_altusmetrum)     /* old devices match any request */
                        return true;