From: Keith Packard Date: Sun, 17 Jun 2012 23:09:43 +0000 (-0700) Subject: altosui: Catch timeout errors when setting up TD telem monitoring X-Git-Tag: 1.0.9.6~65 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=ca310342d7b0bd1b78318cae38d920b8690dfd36 altosui: Catch timeout errors when setting up TD telem monitoring Close the port in this case so it can be used for other things. Signed-off-by: Keith Packard --- diff --git a/altoslib/AltosTelemetryReader.java b/altoslib/AltosTelemetryReader.java index 112e008e..911a099a 100644 --- a/altoslib/AltosTelemetryReader.java +++ b/altoslib/AltosTelemetryReader.java @@ -106,14 +106,22 @@ public class AltosTelemetryReader extends AltosFlightReader { public AltosTelemetryReader (AltosLink in_link) throws IOException, InterruptedException, TimeoutException { link = in_link; - log = new AltosLog(link); - name = link.name; - previous = null; - telem = new LinkedBlockingQueue(); - frequency = AltosPreferences.frequency(link.serial); - set_frequency(frequency); - telemetry = AltosPreferences.telemetry(link.serial); - set_telemetry(telemetry); - link.add_monitor(telem); + try { + log = new AltosLog(link); + name = link.name; + previous = null; + telem = new LinkedBlockingQueue(); + frequency = AltosPreferences.frequency(link.serial); + set_frequency(frequency); + telemetry = AltosPreferences.telemetry(link.serial); + set_telemetry(telemetry); + link.add_monitor(telem); + } catch (TimeoutException e) { + close(true); + throw(e); + } catch (InterruptedException e) { + close(true); + throw(e); + } } }