X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FAlignment.java;h=73ccdc53966e03e5303dabfa0072ed0cea2350e9;hb=eb3e681d6e82ccdd5d312d1981dfb306e7f479f0;hp=89ec5adeb95df1f6ab809560f205caf0c4fb5b2a;hpb=bc71cfb740ebb5788ed0d2eb4de5337c1337525e;p=jalview.git diff --git a/src/jalview/datamodel/Alignment.java b/src/jalview/datamodel/Alignment.java index 89ec5ad..73ccdc5 100755 --- a/src/jalview/datamodel/Alignment.java +++ b/src/jalview/datamodel/Alignment.java @@ -2050,14 +2050,14 @@ public class Alignment implements AlignmentI, AutoCloseable public ContactMatrixI getContactMatrixFor(AlignmentAnnotation _aa) { ContactMatrixI cm = cmholder.getContactMatrixFor(_aa); - if (cm==null && _aa.groupRef!=null) + if (cm == null && _aa.groupRef != null) { cm = _aa.groupRef.getContactMatrixFor(_aa); } - if (cm==null && _aa.sequenceRef!=null) + if (cm == null && _aa.sequenceRef != null) { cm = _aa.sequenceRef.getContactMatrixFor(_aa); - if (cm==null) + if (cm == null && _aa.sequenceRef.getDatasetSequence() != null) { // TODO fix up this logic and unify with getContactListFor cm = _aa.sequenceRef.getDatasetSequence().getContactMatrixFor(_aa); @@ -2069,6 +2069,11 @@ public class Alignment implements AlignmentI, AutoCloseable @Override public ContactListI getContactListFor(AlignmentAnnotation _aa, int column) { + if (_aa.annotations == null || column >= _aa.annotations.length + || column < 0) + { + return null; + } ContactListI cl = cmholder.getContactListFor(_aa, column); if (cl == null && _aa.groupRef != null) { @@ -2087,7 +2092,7 @@ public class Alignment implements AlignmentI, AutoCloseable && spos <= 1 + _aa.sequenceRef.getEnd()) { cl = _aa.sequenceRef.getDatasetSequence().getContactListFor(_aa, - spos-_aa.sequenceRef.getStart()); + spos - _aa.sequenceRef.getStart()); } } }