altosui: Allow 'connect to device' when already connected
[fw/altos] / ao-tools / altosui / AltosUI.java
index e3f613037dc61eab425d2a1becf9a0d735be0ce7..e63a004c67c5f5ef2e747da9373c2259f3ae50b5 100644 (file)
@@ -441,6 +441,7 @@ public class AltosUI extends JFrame {
 
                if (device != null) {
                        try {
+                               stop_display();
                                serial_line.open(device);
                                DeviceThread thread = new DeviceThread(serial_line);
                                serial_line.set_channel(AltosPreferences.channel());
@@ -536,8 +537,12 @@ public class AltosUI extends JFrame {
        Thread          display_thread;
 
        private void stop_display() {
-               if (display_thread != null && display_thread.isAlive())
+               if (display_thread != null && display_thread.isAlive()) {
                        display_thread.interrupt();
+                       try {
+                               display_thread.join();
+                       } catch (InterruptedException ie) {}
+               }
                display_thread = null;
        }