From c6a8fba922746f0fdaf285bc621456fb3f985dd6 Mon Sep 17 00:00:00 2001 From: chartl Date: Fri, 13 Aug 2010 15:37:45 +0000 Subject: [PATCH] Occasionally if a JEXL expression results in no variants being captured (like "QD > 20.0" on filtered variants) the per-sample mapping from samples to eval objects can be empty. This semi-hacky fix prevents null pointer exceptions in setting up the resulting empty table (by jumping straight to it in this case) git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4023 348d0f76-0448-11de-a6fe-93d51630548a --- .../walkers/varianteval/VariantEvaluatorBySample.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/java/src/org/broadinstitute/sting/oneoffprojects/walkers/varianteval/VariantEvaluatorBySample.java b/java/src/org/broadinstitute/sting/oneoffprojects/walkers/varianteval/VariantEvaluatorBySample.java index cd64beb37..d2d6fd5e4 100755 --- a/java/src/org/broadinstitute/sting/oneoffprojects/walkers/varianteval/VariantEvaluatorBySample.java +++ b/java/src/org/broadinstitute/sting/oneoffprojects/walkers/varianteval/VariantEvaluatorBySample.java @@ -163,6 +163,10 @@ class EvalBySample implements TableType { } public void finalizeTable() { + if ( sampleAndEvalResults == null || sampleAndEvalResults.size() == 0 ) { + finalizedResults = new Object[0][0]; + return; // todo -- early return is hacky + } finalizedResults = new Object[sampleAndEvalResults.size()][sampleAndEvalResults.firstEntry().getValue().size()]; int i = 0; for ( Map.Entry> evalBySample : sampleAndEvalResults.entrySet() ) {