}
if (startRes >= annotations.length)
{
- startRes = annotations.length - 1;
+ startRes = annotations.length;
}
- if (endRes >= annotations.length)
+ if (endRes < 0)
{
- endRes = annotations.length - 1;
+ endRes = -1;
}
- if (annotations == null)
+ if (endRes >= annotations.length)
{
- return;
+ endRes = annotations.length - 1;
}
Annotation[] temp = new Annotation[endRes - startRes + 1];
if (startRes < annotations.length)
private void removeHiddenAnnotation(int start, int end,
HiddenColumns hiddenColumns)
{
+ start = Math.min(Math.max(0, start), annotations.length);
+ end = Math.min(Math.max(-1, end), annotations.length - 1);
// mangle the alignmentAnnotation annotation array
ArrayList<Annotation[]> annels = new ArrayList<>();
Annotation[] els = null;