From 337c2a21cdfccc1190540e82177d5bc1ca69aa2f Mon Sep 17 00:00:00 2001 From: Heng Li Date: Thu, 29 Jun 2017 15:45:07 -0400 Subject: [PATCH] r105: fixed a bug in repeated right ext when zdrop --- align.c | 4 ++-- main.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/align.c b/align.c index dc571ac..0dd27bf 100644 --- a/align.c +++ b/align.c @@ -240,7 +240,7 @@ static void mm_align1(void *km, const mm_mapopt_t *opt, const mm_idx_t *mi, int mm_append_cigar(r, ez->n_cigar, ez->cigar); mm_update_extra(r->p, qseq, tseq, ez->n_cigar, ez->cigar, 0); } - if (ez->zdropped) { // truncated by Z-drop + if (ez->zdropped) { // truncated by Z-drop; TODO: sometimes Z-drop kicks in because the next seed placement is wrong. This can be fixed in principle. int j; for (j = i - 1; j >= 0; --j) if ((int32_t)a[r->as + j].x < re + ez->max_t) @@ -261,7 +261,7 @@ static void mm_align1(void *km, const mm_mapopt_t *opt, const mm_idx_t *mi, int } } - if (i == r->cnt && qe < qe0 && re < re0) { // right extension + if (!r->split && qe < qe0 && re < re0) { // right extension qseq = &qseq0[rev][qe]; mm_idx_getseq(mi, rid, re, re0, tseq); ksw_extz2_sse(km, qe0 - qe, qseq, re0 - re, tseq, 5, mat, opt->q, opt->e, bw, opt->zdrop, KSW_EZ_EXTZ_ONLY, ez); diff --git a/main.c b/main.c index 800db9f..725f39c 100644 --- a/main.c +++ b/main.c @@ -10,7 +10,7 @@ #include "minimap.h" #include "mmpriv.h" -#define MM_VERSION "2.0-r104-pre" +#define MM_VERSION "2.0-r105-pre" void liftrlimit() {