backup; still buggy

This commit is contained in:
Heng Li 2017-07-03 00:52:00 -04:00
parent e06c342659
commit 696ebce66e
2 changed files with 3 additions and 2 deletions

View File

@ -242,7 +242,7 @@ static void mm_align1(void *km, const mm_mapopt_t *opt, const mm_idx_t *mi, int
if (r->cnt - (j + 1) >= opt->min_cnt) {
mm_split_reg(r, r2, j + 1, qlen, a);
if (j + 1 < opt->min_cnt)
r2->id = r->id, r->id = -1;
r2->id = r->id, r2->parent = r2->id, r->id = -1, r->parent = MM_PARENT_TMP_PRI;
}
break;
} else r->p->dp_score += ez->score;
@ -305,6 +305,7 @@ mm_reg1_t *mm_align_skeleton(void *km, const mm_mapopt_t *opt, const mm_idx_t *m
}
}
*n_regs_ = n_regs;
mm_sync_regs(km, n_regs, regs);
kfree(km, qseq0[0]); kfree(km, qseq0[1]);
kfree(km, ez.cigar);
mm_filter_regs(km, opt, n_regs_, regs);

2
hit.c
View File

@ -85,7 +85,7 @@ void mm_update_parent(void *km, float mask_level, int n, mm_reg1_t *r) // due to
if (n <= 0) return;
for (i = 0; i < n; ++i)
if (r[i].id == r[i].parent || r[i].parent < 0) ++n_pri;
if (n_pri <= 1) return;
if (n_pri <= 1) return; // FIXME: this is not right
w = (int*)kmalloc(km, n_pri * sizeof(int));
for (i = j = 0; i < n; ++i) // find the first primary
if (r[i].id == r[i].parent) break;