From b77f5f731dcf04b36644d9de00073cd65ce6760b Mon Sep 17 00:00:00 2001 From: Federico Fissore Date: Mon, 1 Jun 2015 15:27:12 +0200 Subject: [PATCH] If opening serial monitor causes an error, set it closed. Fixes #3268 --- app/src/processing/app/Editor.java | 5 +++++ app/src/processing/app/SerialMonitor.java | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/processing/app/Editor.java b/app/src/processing/app/Editor.java index 182b799ee..abf1cd4c7 100644 --- a/app/src/processing/app/Editor.java +++ b/app/src/processing/app/Editor.java @@ -2727,6 +2727,11 @@ public class Editor extends JFrame implements RunnerListener { errorMessage += " (" + ((SerialPortException) e.getCause()).getExceptionType() + ")"; } statusError(errorMessage); + try { + serialMonitor.close(); + } catch (Exception e1) { + // noop + } } catch (Exception e) { statusError(e); } finally { diff --git a/app/src/processing/app/SerialMonitor.java b/app/src/processing/app/SerialMonitor.java index e4d1455b5..9e4184855 100644 --- a/app/src/processing/app/SerialMonitor.java +++ b/app/src/processing/app/SerialMonitor.java @@ -99,8 +99,8 @@ public class SerialMonitor extends AbstractMonitor { } public void close() throws Exception { + super.close(); if (serial != null) { - super.close(); int[] location = getPlacement(); String locationStr = PApplet.join(PApplet.str(location), ","); PreferencesData.set("last.serial.location", locationStr);