X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FConservationThread.java;h=8f4a6a67ff02a98f8a9c4b62fde6e2a4660e5591;hb=691798cf6a90094f4c83e79fd5c703457b1135b0;hp=4b921ac3f26ddd11696adbc95d15df912c940dfc;hpb=23d1e9604a788400fe2115c58b122556e1fb92a9;p=jalview.git diff --git a/src/jalview/gui/ConservationThread.java b/src/jalview/gui/ConservationThread.java index 4b921ac..8f4a6a6 100644 --- a/src/jalview/gui/ConservationThread.java +++ b/src/jalview/gui/ConservationThread.java @@ -1,5 +1,19 @@ -/** +/* + * 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. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with Jalview. If not, see . */ package jalview.gui; @@ -14,6 +28,7 @@ class ConservationThread extends Thread * */ private AlignViewport alignViewport; + AlignmentPanel ap; public ConservationThread(AlignViewport alignViewport, AlignmentPanel ap) @@ -45,15 +60,18 @@ class ConservationThread extends Thread AlignViewport.UPDATING_CONSERVATION = true; - int alWidth = this.alignViewport.alignment.getWidth(); - if (alWidth < 0) + int alWidth; + + if (alignViewport==null || alignViewport.alignment==null || (alWidth=alignViewport.alignment.getWidth())< 0) { + this.alignViewport.updatingConservation = false; + AlignViewport.UPDATING_CONSERVATION = false; return; } Conservation cons = new jalview.analysis.Conservation("All", - jalview.schemes.ResidueProperties.propHash, 3, this.alignViewport.alignment - .getSequences(), 0, alWidth - 1); + jalview.schemes.ResidueProperties.propHash, 3, + this.alignViewport.alignment.getSequences(), 0, alWidth - 1); cons.calculate(); cons.verdict(false, this.alignViewport.ConsPercGaps); @@ -62,7 +80,8 @@ class ConservationThread extends Thread { cons.findQuality(); } - cons.completeAnnotations(alignViewport.conservation,alignViewport.quality, 0, alWidth); + cons.completeAnnotations(alignViewport.conservation, + alignViewport.quality, 0, alWidth); } catch (OutOfMemoryError error) { new OOMWarning("calculating conservation", error); @@ -81,4 +100,4 @@ class ConservationThread extends Thread } } -} \ No newline at end of file +}