patch for bizarre ConcurrentModificationException that I've never seen before !
authorJim Procter <jprocter@compbio.dundee.ac.uk>
Thu, 14 Feb 2013 18:07:05 +0000 (18:07 +0000)
committerJim Procter <jprocter@compbio.dundee.ac.uk>
Thu, 14 Feb 2013 18:07:05 +0000 (18:07 +0000)
src/jalview/gui/Desktop.java

index db7c32c..b135417 100644 (file)
@@ -1509,6 +1509,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   {
     if (progressPanel != null)
     {
+      synchronized(progressPanel) {
       progressPanel.remove(progbar);
       GridLayout gl = (GridLayout) progressPanel.getLayout();
       gl.setRows(gl.getRows() - 1);
@@ -1517,6 +1518,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         this.getContentPane().remove(progressPanel);
         progressPanel = null;
       }
+      }
     }
     validate();
   }
@@ -1526,9 +1528,9 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     fileLoadingCount--;
     if (fileLoadingCount < 1)
     {
-      for (JPanel flp : fileLoadingPanels)
+      while (fileLoadingPanels.size()>0)
       {
-        removeProgressPanel(flp);
+        removeProgressPanel(fileLoadingPanels.remove(0));
       }
       fileLoadingPanels.clear();
       fileLoadingCount = 0;