From 04000d920cddb8991fd05596a3fe23884ca06a31 Mon Sep 17 00:00:00 2001 From: Ryan Poplin Date: Mon, 21 May 2012 16:46:59 -0400 Subject: [PATCH] Bug fix in BadCigar read filter for index out of bounds exception when used with a bam file that contains unmapped reads. --- .../broadinstitute/sting/gatk/filters/BadCigarFilter.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/public/java/src/org/broadinstitute/sting/gatk/filters/BadCigarFilter.java b/public/java/src/org/broadinstitute/sting/gatk/filters/BadCigarFilter.java index 6a9642d97..9a1455859 100755 --- a/public/java/src/org/broadinstitute/sting/gatk/filters/BadCigarFilter.java +++ b/public/java/src/org/broadinstitute/sting/gatk/filters/BadCigarFilter.java @@ -39,9 +39,11 @@ import net.sf.samtools.SAMRecord; public class BadCigarFilter extends ReadFilter { public boolean filterOut(final SAMRecord rec) { - Cigar c = rec.getCigar(); + final Cigar c = rec.getCigar(); + if( c.isEmpty() ) { return false; } // if there is no Cigar then it can't be bad + boolean previousElementWasIndel = false; - CigarOperator lastOp = c.getCigarElement(0).getOperator(); + CigarOperator lastOp = c.getCigarElement(0).getOperator(); if (lastOp == CigarOperator.D) // filter out reads starting with deletion return true;