X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FColumnSelection.java;h=d0fc9277f5c5bbda923b5b7f0acc4d695c5f11de;hb=797df64fa2a0a30773d0f48f5494d4155e5a8be3;hp=0bcbd5b2eb61e958cb4a1992ffd55f17d012820e;hpb=c5b266dbd1a12ac4b5e0a070b10fa707a73cd889;p=jalview.git diff --git a/src/jalview/datamodel/ColumnSelection.java b/src/jalview/datamodel/ColumnSelection.java index 0bcbd5b..d0fc927 100644 --- a/src/jalview/datamodel/ColumnSelection.java +++ b/src/jalview/datamodel/ColumnSelection.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, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle * * This file is part of Jalview. * @@ -1181,9 +1181,16 @@ public class ColumnSelection sq = sq + sb; while ((diff = spos + offset - sq.length() - 1) > 0) { - sq = sq - + ((diff >= sb.length()) ? sb.toString() : sb - .substring(0, diff)); + //sq = sq + // + ((diff >= sb.length()) ? sb.toString() : sb + // .substring(0, diff)); + if (diff>=sb.length()) { + sq+=sb.toString(); + } else { + char[] buf = new char[diff]; + sb.getChars(0, diff, buf, 0); + sq+=buf.toString(); + } } } sq += sb.toString(); @@ -1220,9 +1227,16 @@ public class ColumnSelection int diff = origseq.getLength() - sq.length(); while (diff > 0) { - sq = sq - + ((diff >= sb.length()) ? sb.toString() : sb - .substring(0, diff)); + //sq = sq + // + ((diff >= sb.length()) ? sb.toString() : sb + // .substring(0, diff)); + if (diff>=sb.length()) { + sq+=sb.toString(); + } else { + char[] buf = new char[diff]; + sb.getChars(0, diff, buf, 0); + sq+=buf.toString(); + } diff = origseq.getLength() - sq.length(); } }