diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/IndelGenotypeLikelihoodsCalculationModel.java b/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/IndelGenotypeLikelihoodsCalculationModel.java index 78d7d14f0..ffcaad54c 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/IndelGenotypeLikelihoodsCalculationModel.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/IndelGenotypeLikelihoodsCalculationModel.java @@ -231,23 +231,15 @@ public class IndelGenotypeLikelihoodsCalculationModel extends GenotypeLikelihood //System.out.println(new String(ref.getBases())); byte[] refBases = Arrays.copyOfRange(ref.getBases(),startIdxInReference,startIdxInReference+dLen); - boolean ok = true; - for (int i=0; i < refBases.length; i++) - if (!BaseUtils.isRegularBase(refBases[i])) - ok = false; - if (ok) { + if (Allele.acceptableAlleleBases(refBases)) { refAllele = Allele.create(refBases,true); altAllele = Allele.create(Allele.NULL_ALLELE_STRING, false); } } else { // insertion case - boolean ok = true; - for (int i=0; i < bestAltAllele.length(); i++) - if (!BaseUtils.isRegularBase(bestAltAllele.getBytes()[i])) - ok = false; - if (ok) { + if (Allele.acceptableAlleleBases(bestAltAllele)) { refAllele = Allele.create(Allele.NULL_ALLELE_STRING, true); altAllele = Allele.create(bestAltAllele, false); } diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/UnifiedGenotyperEngine.java b/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/UnifiedGenotyperEngine.java index 0cb942ab3..2f4ae3e2c 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/UnifiedGenotyperEngine.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/UnifiedGenotyperEngine.java @@ -203,6 +203,10 @@ public class UnifiedGenotyperEngine { return null; vc = new VariantContext("UG_call", vcInput.getChr(), vcInput.getStart(), vcInput.getEnd(), vcInput.getAlleles()); } else { + // deal with bad/non-standard reference bases + if ( !Allele.acceptableAlleleBases(new byte[]{ref.getBase()}) ) + return null; + Set alleles = new HashSet(); alleles.add(Allele.create(ref.getBase(), true)); vc = new VariantContext("UG_call", ref.getLocus().getContig(), ref.getLocus().getStart(), ref.getLocus().getStart(), alleles);