summaryrefslogtreecommitdiff
path: root/altoslib/AltosLog.java
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2013-12-18 01:14:11 -0800
committerKeith Packard <keithp@keithp.com>2013-12-18 01:14:11 -0800
commite26306c9350ef1d107d4257ef1c09d15165c9154 (patch)
treed7983c6a04c54b3307d6fc2699dad4fa21d8bde0 /altoslib/AltosLog.java
parent18852efa108ba6e6e69dfd5076d4f4c01f62b4ef (diff)
altoslib: Pass InterruptedException up the stack instead of hiding it
When interrupting a thread that is talking to a serial device, it's important not to have that thread discard the InterruptedException so that it will actually terminate. This patch removes a bunch of places that were discarding InterruptedExceptions and lets higher level code see them so that they can exit cleanly. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altoslib/AltosLog.java')
-rw-r--r--altoslib/AltosLog.java11
1 files changed, 4 insertions, 7 deletions
diff --git a/altoslib/AltosLog.java b/altoslib/AltosLog.java
index 015d9f65..d4fbee97 100644
--- a/altoslib/AltosLog.java
+++ b/altoslib/AltosLog.java
@@ -59,18 +59,15 @@ public class AltosLog implements Runnable {
return file;
}
- boolean open (AltosState state) throws IOException {
+ boolean open (AltosState state) throws IOException, InterruptedException {
AltosFile a = new AltosFile(state);
log_file = new FileWriter(a, true);
if (log_file != null) {
while (!pending_queue.isEmpty()) {
- try {
- String s = pending_queue.take();
- log_file.write(s);
- log_file.write('\n');
- } catch (InterruptedException ie) {
- }
+ String s = pending_queue.take();
+ log_file.write(s);
+ log_file.write('\n');
}
log_file.flush();
file = a;