r600: bugfix - missing secondary alignments (#71)

This should very rarely happen to typical data, but has a higher chance in
artifactual data.
This commit is contained in:
Heng Li 2017-11-30 11:34:10 -05:00
parent cbdb6c069f
commit af1d6afba9
2 changed files with 2 additions and 2 deletions

2
hit.c
View File

@ -234,7 +234,7 @@ void mm_select_sub(void *km, float pri_ratio, int min_diff, int best_n, int *n_,
if (p == i || r[i].inv) { // primary or inversion
r[k++] = r[i];
} else if ((r[i].score >= r[p].score * pri_ratio || r[i].score + min_diff >= r[p].score) && n_2nd < best_n) {
if (!(r[i].qs == r[p].qs && r[i].qe == r[p].qe && r[i].rs == r[p].rs && r[i].re == r[p].re)) // not identical hits
if (!(r[i].qs == r[p].qs && r[i].qe == r[p].qe && r[i].rid == r[p].rid && r[i].rs == r[p].rs && r[i].re == r[p].re)) // not identical hits
r[k++] = r[i], ++n_2nd;
else if (r[i].p) free(r[i].p);
} else if (r[i].p) free(r[i].p);

2
main.c
View File

@ -6,7 +6,7 @@
#include "mmpriv.h"
#include "getopt.h"
#define MM_VERSION "2.5-r574-dirty"
#define MM_VERSION "2.5-r600-dirty"
#ifdef __linux__
#include <sys/resource.h>