From 3d2450ed970b503c68bbbd43d0bc2984bde86676 Mon Sep 17 00:00:00 2001 From: Heng Li Date: Thu, 23 May 2013 12:45:14 -0400 Subject: [PATCH] r395: bugfix - hard clipping not applied on revaln --- bwamem.c | 4 ++-- main.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bwamem.c b/bwamem.c index bfc2811..c0bd0ab 100644 --- a/bwamem.c +++ b/bwamem.c @@ -714,8 +714,8 @@ void mem_aln2sam(const bntseq_t *bns, kstring_t *str, bseq1_t *s, int n, const m } else { // the reverse strand int i, qb = 0, qe = s->l_seq; if (p->n_cigar) { - if ((p->cigar[0]&0xf) == 4) qe -= p->cigar[0]>>4; - if ((p->cigar[p->n_cigar-1]&0xf) == 4) qb += p->cigar[p->n_cigar-1]>>4; + if (which && ((p->cigar[0]&0xf) == 4 || (p->cigar[0]&0xf) == 3)) qe -= p->cigar[0]>>4; + if (which && ((p->cigar[p->n_cigar-1]&0xf) == 4 || (p->cigar[p->n_cigar-1]&0xf) == 3)) qb += p->cigar[p->n_cigar-1]>>4; } ks_resize(str, str->l + (qe - qb) + 1); for (i = qe-1; i >= qb; --i) str->s[str->l++] = "TGCAN"[(int)s->seq[i]]; diff --git a/main.c b/main.c index 96dde70..72877e4 100644 --- a/main.c +++ b/main.c @@ -3,7 +3,7 @@ #include "utils.h" #ifndef PACKAGE_VERSION -#define PACKAGE_VERSION "0.7.4-r394-beta" +#define PACKAGE_VERSION "0.7.4-r395-beta" #endif int bwa_fa2pac(int argc, char *argv[]);