X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FDesktop.java;h=35c78187a1e335d290ab422799f2babe6b008d19;hb=6caf8e67439a4ea034d8f3575d3f6167c86784d0;hp=a2a344cbf84f066bd47b350402bcb47d854d4ecb;hpb=7553b1d4e5aeb837c94d1281ed91e6635edc37b3;p=jalview.git diff --git a/src/jalview/gui/Desktop.java b/src/jalview/gui/Desktop.java index a2a344c..35c7818 100644 --- a/src/jalview/gui/Desktop.java +++ b/src/jalview/gui/Desktop.java @@ -1518,7 +1518,21 @@ public class Desktop extends jalview.jbgui.GDesktop { // suppress a possible repeat prompt to save script groovyConsole.setDirty(false); - groovyConsole.exit(); + + // and tidy up + if (((Window) groovyConsole.getFrame()) != null + && ((Window) groovyConsole.getFrame()).isVisible()) + { + // console is visible -- FIXME JAL-4327 + groovyConsole.exit(); + } + else + { + // console is not, so just let it dispose itself when we shutdown + // we don't call groovyConsole.exit() because it calls the shutdown + // handler with invokeAndWait() causing deadlock + groovyConsole = null; + } } if (terminateJvm)