Protect against cases where there are counts but no quals

This commit is contained in:
Eric Banks 2012-10-04 10:52:30 -04:00
parent 0c46845c92
commit dfddc4bb0e
2 changed files with 3 additions and 3 deletions

View File

@ -214,7 +214,7 @@ import java.util.Map;
if (entry.getValue() > sumQuals.get(maxI)) if (entry.getValue() > sumQuals.get(maxI))
maxI = entry.getKey(); maxI = entry.getKey();
} }
return maxI; return (sumQuals.get(maxI) > 0L ? maxI : baseIndexWithMostCounts());
} }
@Ensures("result != null") @Ensures("result != null")
@ -224,7 +224,7 @@ import java.util.Map;
if (entry.getKey().isNucleotide() && entry.getValue() > sumQuals.get(maxI)) if (entry.getKey().isNucleotide() && entry.getValue() > sumQuals.get(maxI))
maxI = entry.getKey(); maxI = entry.getKey();
} }
return maxI; return (sumQuals.get(maxI) > 0L ? maxI : baseIndexWithMostCountsWithoutIndels());
} }
@Ensures("result >=0") @Ensures("result >=0")

View File

@ -472,7 +472,7 @@ public class SlidingWindow {
* @param rms the rms mapping quality in the header element * @param rms the rms mapping quality in the header element
*/ */
private void genericAddBaseToConsensus(SyntheticRead syntheticRead, BaseAndQualsCounts baseCounts, double rms) { private void genericAddBaseToConsensus(SyntheticRead syntheticRead, BaseAndQualsCounts baseCounts, double rms) {
BaseIndex base = baseCounts.baseIndexWithMostProbability(); final BaseIndex base = baseCounts.baseIndexWithMostProbability();
byte count = (byte) Math.min(baseCounts.countOfBase(base), Byte.MAX_VALUE); byte count = (byte) Math.min(baseCounts.countOfBase(base), Byte.MAX_VALUE);
byte qual = baseCounts.averageQualsOfBase(base); byte qual = baseCounts.averageQualsOfBase(base);
byte insQual = baseCounts.averageInsertionQualsOfBase(base); byte insQual = baseCounts.averageInsertionQualsOfBase(base);