From d18123a040ae5e655d88719e0fd6a4dd00dc7185 Mon Sep 17 00:00:00 2001 From: Tobias Rausch Date: Tue, 3 Jun 2014 11:29:18 +0200 Subject: [PATCH] Added missing empty check. --- src/delly.cpp | 20 ++++++++++++-------- src/version.h | 2 +- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/delly.cpp b/src/delly.cpp index d21529d..2505abf 100644 --- a/src/delly.cpp +++ b/src/delly.cpp @@ -1219,24 +1219,28 @@ vcfOutput(TConfig const& c, std::vector const& svs, TJ // Always take the minimum to be conservative (and to flag unclear samples as LowQual) if ((countMapItLeft!=normalCountMap.end()) && (countMapItRight!=normalCountMap.end())) { - if (countMapItLeft->second[0].size() <= countMapItRight->second[0].size()) countMapIt=countMapItLeft; - else countMapIt=countMapItRight; + if ((!countMapItLeft->second.empty()) && (!countMapItRight->second.empty())) { + if (countMapItLeft->second[0].size() <= countMapItRight->second[0].size()) countMapIt=countMapItLeft; + else countMapIt=countMapItRight; + } } if ((abCountMapItLeft!=abnormalCountMap.end()) && (abCountMapItRight!=abnormalCountMap.end())) { - if ((svIter->chr != svIter->chr2) || (abCountMapItLeft->second[0].size() > abCountMapItRight->second[0].size())) abCountMapIt=abCountMapItRight; - else abCountMapIt=abCountMapItLeft; + if ((!abCountMapItLeft->second.empty()) && (!abCountMapItRight->second.empty())) { + if ((svIter->chr != svIter->chr2) || (abCountMapItLeft->second[0].size() > abCountMapItRight->second[0].size())) abCountMapIt=abCountMapItRight; + else abCountMapIt=abCountMapItLeft; + } } - TMapqVector mapqRef; - TMapqVector mapqAlt; + TMapqVector mapqRef = TMapqVector(); + TMapqVector mapqAlt = TMapqVector(); if ((svIter->precise) || (c.junction)) { // Genotyping for precise events uses junction read qualities mapqRef = jctCountMapIt->second.first; mapqAlt = jctCountMapIt->second.second; } else { // Genotyping for imprecise events uses paired-end qualities - mapqRef = countMapIt->second[0]; - mapqAlt = abCountMapIt->second[0]; + if ((countMapIt!=normalCountMap.end()) && (!countMapIt->second.empty())) mapqRef = countMapIt->second[0]; + if ((abCountMapIt!=abnormalCountMap.end()) && (!abCountMapIt->second.empty())) mapqAlt = abCountMapIt->second[0]; } // Compute genotype likelihoods diff --git a/src/version.h b/src/version.h index 88e14eb..04a8023 100644 --- a/src/version.h +++ b/src/version.h @@ -27,7 +27,7 @@ Contact: Tobias Rausch (rausch@embl.de) namespace torali { - std::string dellyVersionNumber = "0.5.4"; + std::string dellyVersionNumber = "0.5.5"; inline void printTitle(std::string const& title)