diff --git a/java/src/org/broadinstitute/sting/utils/GenomeLocParser.java b/java/src/org/broadinstitute/sting/utils/GenomeLocParser.java index 86a3fe15a..6ffd63c7d 100644 --- a/java/src/org/broadinstitute/sting/utils/GenomeLocParser.java +++ b/java/src/org/broadinstitute/sting/utils/GenomeLocParser.java @@ -252,7 +252,6 @@ public class GenomeLocParser { * @return the list of merged locations */ public static List mergeIntervalLocations(final List raw, IntervalMergingRule rule) { - logger.debug(" Raw locations are: " + Utils.join(", ", raw)); if (raw.size() <= 1 || rule == IntervalMergingRule.NONE) return raw; else { @@ -355,11 +354,18 @@ public class GenomeLocParser { } catch (Exception e) { try { + ret = new ArrayList(); xReadLines reader = new xReadLines(new File(file_name)); - List lines = reader.readLines(); + for(String line: reader) { + List loci = parseGenomeLocs(line, rule); + if(loci != null) + ret.addAll(loci); + } reader.close(); - String locStr = Utils.join(";", lines); - ret = parseGenomeLocs(locStr, rule); + + if(ret.isEmpty()) + return null; + for(GenomeLoc locus: ret) exceptionOnInvalidGenomeLocBounds(locus); return ret;