From 0fc00d51cd14f722f147ddc451ec157131ce9a3a Mon Sep 17 00:00:00 2001 From: amwaterhouse Date: Thu, 22 Dec 2005 15:59:21 +0000 Subject: [PATCH] Watch for trim left/right null widths --- src/jalview/datamodel/Alignment.java | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/jalview/datamodel/Alignment.java b/src/jalview/datamodel/Alignment.java index 338294b..f0aeed9 100755 --- a/src/jalview/datamodel/Alignment.java +++ b/src/jalview/datamodel/Alignment.java @@ -205,13 +205,23 @@ public class Alignment implements AlignmentI */ public void trimLeft(int i) { - for (int j = 0; j < getHeight(); j++) + int j, jSize = getHeight(); + for (j = 0; j < jSize; j++) { SequenceI s = getSequenceAt(j); int newstart = s.findPosition(i); - s.setStart(newstart); - s.setSequence(s.getSequence().substring(i)); + if(i>s.getLength()) + { + sequences.removeElement(s); + j--; + jSize--; + } + else + { + s.setStart(newstart); + s.setSequence(s.getSequence().substring(i)); + } } } @@ -228,7 +238,8 @@ public class Alignment implements AlignmentI int newend = s.findPosition(i); s.setEnd(newend); - s.setSequence(s.getSequence().substring(0, i + 1)); + if(s.getLength()>i) + s.setSequence(s.getSequence().substring(0, i + 1)); } } -- 1.7.10.2