r453: avoid duplicated strcmp() for ava
This commit is contained in:
parent
0c63325985
commit
0d4ecd19ee
2
main.c
2
main.c
|
|
@ -6,7 +6,7 @@
|
||||||
#include "mmpriv.h"
|
#include "mmpriv.h"
|
||||||
#include "getopt.h"
|
#include "getopt.h"
|
||||||
|
|
||||||
#define MM_VERSION "2.2-r452-dirty"
|
#define MM_VERSION "2.2-r453-dirty"
|
||||||
|
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
#include <sys/resource.h>
|
#include <sys/resource.h>
|
||||||
|
|
|
||||||
6
map.c
6
map.c
|
|
@ -211,9 +211,11 @@ static mm128_t *collect_seed_hits(const mm_mapopt_t *opt, const mm_idx_t *mi, co
|
||||||
mm128_t *p;
|
mm128_t *p;
|
||||||
if (qname && (opt->flag&(MM_F_NO_SELF|MM_F_AVA))) {
|
if (qname && (opt->flag&(MM_F_NO_SELF|MM_F_AVA))) {
|
||||||
const char *tname = mi->seq[r[k]>>32].name;
|
const char *tname = mi->seq[r[k]>>32].name;
|
||||||
if ((opt->flag&MM_F_NO_SELF) && strcmp(qname, tname) == 0 && rpos == (q->qpos>>1)) // avoid the diagonal
|
int cmp;
|
||||||
|
cmp = strcmp(qname, tname);
|
||||||
|
if ((opt->flag&MM_F_NO_SELF) && cmp == 0 && rpos == (q->qpos>>1)) // avoid the diagonal
|
||||||
continue;
|
continue;
|
||||||
if ((opt->flag&MM_F_AVA) && strcmp(qname, tname) > 0) // all-vs-all mode: map once
|
if ((opt->flag&MM_F_AVA) && cmp > 0) // all-vs-all mode: map once
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
p = &a[(*n_a)++];
|
p = &a[(*n_a)++];
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue