From 525cf331f4e6568479582c44f7c7b8912cdf7773 Mon Sep 17 00:00:00 2001 From: Eric Banks Date: Tue, 13 Nov 2012 11:52:47 -0500 Subject: [PATCH 1/3] Don't catch a User Error and re-throw as a Reviewed Exception. That makes Eric unhappy. --- .../sting/gatk/io/storage/VariantContextWriterStorage.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java b/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java index 31f6d5954..8e4633869 100644 --- a/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java +++ b/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java @@ -198,8 +198,6 @@ public class VariantContextWriterStorage implements Storage Date: Tue, 13 Nov 2012 11:53:12 -0500 Subject: [PATCH 2/3] Having a malformed GATK report is a User Error --- .../broadinstitute/sting/gatk/report/GATKReportVersion.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/public/java/src/org/broadinstitute/sting/gatk/report/GATKReportVersion.java b/public/java/src/org/broadinstitute/sting/gatk/report/GATKReportVersion.java index b5a5e0443..b51fb17f0 100755 --- a/public/java/src/org/broadinstitute/sting/gatk/report/GATKReportVersion.java +++ b/public/java/src/org/broadinstitute/sting/gatk/report/GATKReportVersion.java @@ -25,6 +25,7 @@ package org.broadinstitute.sting.gatk.report; import org.broadinstitute.sting.utils.exceptions.ReviewedStingException; +import org.broadinstitute.sting.utils.exceptions.UserException; public enum GATKReportVersion { /** @@ -91,6 +92,6 @@ public enum GATKReportVersion { if (header.startsWith("#:GATKReport.v1.1")) return GATKReportVersion.V1_1; - throw new ReviewedStingException("Unknown GATK report version in header: " + header); + throw new UserException.BadInput("The GATK report has an unknown/unsupported version in the header: " + header); } } From ba41f65759724b650d8996185bc4761f50bda466 Mon Sep 17 00:00:00 2001 From: Eric Banks Date: Tue, 13 Nov 2012 11:53:39 -0500 Subject: [PATCH 3/3] Protect against NPEs in SelectVariants by checking for missing Genotypes --- .../sting/gatk/walkers/variantutils/SelectVariants.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/public/java/src/org/broadinstitute/sting/gatk/walkers/variantutils/SelectVariants.java b/public/java/src/org/broadinstitute/sting/gatk/walkers/variantutils/SelectVariants.java index d1b7cb96f..d28fe34d6 100755 --- a/public/java/src/org/broadinstitute/sting/gatk/walkers/variantutils/SelectVariants.java +++ b/public/java/src/org/broadinstitute/sting/gatk/walkers/variantutils/SelectVariants.java @@ -659,7 +659,10 @@ public class SelectVariants extends RodWalker implements TreeR return (g !=null && !g.isHomRef() && (g.isCalled() || (g.isFiltered() && !EXCLUDE_FILTERED))); } - private boolean haveSameGenotypes(Genotype g1, Genotype g2) { + private boolean haveSameGenotypes(final Genotype g1, final Genotype g2) { + if ( g1 == null || g2 == null ) + return false; + if ((g1.isCalled() && g2.isFiltered()) || (g2.isCalled() && g1.isFiltered()) || (g1.isFiltered() && g2.isFiltered() && EXCLUDE_FILTERED))