From 83a75621d9b3d0dcdef7848e9170a0c5e0aac242 Mon Sep 17 00:00:00 2001 From: peterjc Date: Thu, 22 Mar 2012 17:48:47 +0000 Subject: [PATCH] Helpful error message on bad CIGAR in unpad_seq --- padding.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/padding.c b/padding.c index fb3bc13..17da758 100644 --- a/padding.c +++ b/padding.c @@ -37,14 +37,16 @@ static void unpad_seq(bam1_t *b, kstring_t *s) int op, ol; op = bam_cigar_op(cigar[k]); ol = bam_cigar_oplen(cigar[k]); - assert(op == BAM_CMATCH || op == BAM_CDEL || op == BAM_CSOFT_CLIP); if (op == BAM_CMATCH) { for (i = 0; i < ol; ++i) s->s[s->l++] = bam1_seqi(seq, j); ++j; } else if (op == BAM_CSOFT_CLIP) { j += ol; - } else { + } else if (op == BAM_CDEL) { for (i = 0; i < ol; ++i) s->s[s->l++] = 0; + } else { + fprintf(stderr, "[unpad_seq] Didn't expect CIGAR op %c in %s\n", BAM_CIGAR_STR[op], bam1_qname(b)); + assert(-1); } } } -- 2.39.2