X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fstructure%2FStructureSelectionManager.java;h=f9e8fdba4db2f673da6c0c458a6c8a912d758d55;hb=fd026dead85b733e64fdc7c2e6c88d1adc10626a;hp=32241a5c3de536c2ec9dc700cbd276e0c86691cd;hpb=cc20fe9a60ad018141ae58142e93cb3c6b83ec3c;p=jalview.git diff --git a/src/jalview/structure/StructureSelectionManager.java b/src/jalview/structure/StructureSelectionManager.java index 32241a5..f9e8fdb 100644 --- a/src/jalview/structure/StructureSelectionManager.java +++ b/src/jalview/structure/StructureSelectionManager.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6) - * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) + * Copyright (C) 2011 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle * * This file is part of Jalview. * @@ -349,6 +349,11 @@ public class StructureSelectionManager public void mouseOverStructure(int pdbResNum, String chain, String pdbfile) { + if (listeners==null) + { + // old or prematurely sent event + return; + } boolean hasSequenceListeners = handlingVamsasMo || seqmappings != null; SearchResults results = null; SequenceI lastseq = null; @@ -784,13 +789,24 @@ public class StructureSelectionManager */ public static void release(StructureSelectionManagerProvider jalviewLite) { - StructureSelectionManager mnger=(instances.get(jalviewLite)); - if (mnger!=null) +// synchronized (instances) { - instances.remove(jalviewLite); - try { - mnger.finalize(); - } catch (Throwable x){}; + if (instances == null) + { + return; + } + StructureSelectionManager mnger = (instances.get(jalviewLite)); + if (mnger != null) + { + instances.remove(jalviewLite); + try + { + mnger.finalize(); + } catch (Throwable x) + { + } + ; + } } }