X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=bam_sort.c;fp=bam_sort.c;h=76ab793196ca76fc5a63d619e230cf0fb5f59f1e;hb=1c7f8043c1b5728adec4ee1014f0d2274f348dcc;hp=90ecddc26c171d112a698cdcba99bb03aebf6d69;hpb=c9a9c2742eecde8e097f70efdb6d599374ca325e;p=samtools.git diff --git a/bam_sort.c b/bam_sort.c index 90ecddc..76ab793 100644 --- a/bam_sort.c +++ b/bam_sort.c @@ -137,11 +137,15 @@ int bam_merge_core(int by_qname, const char *out, const char *headers, int n, ch // check that they are consistent with the existing binary list // of reference information. if (hheaders->n_targets > 0) { - if (hout->n_targets != hheaders->n_targets) + if (hout->n_targets != hheaders->n_targets) { fprintf(stderr, "[bam_merge_core] number of @SQ headers in `%s' differs from number of target sequences", headers); + if (!reg) return -1; + } for (j = 0; j < hout->n_targets; ++j) - if (strcmp(hout->target_name[j], hheaders->target_name[j]) != 0) + if (strcmp(hout->target_name[j], hheaders->target_name[j]) != 0) { fprintf(stderr, "[bam_merge_core] @SQ header '%s' in '%s' differs from target sequence", hheaders->target_name[j], headers); + if (!reg) return -1; + } } swap_header_text(hout, hheaders); bam_header_destroy(hheaders);