r890: bns_intv2rid() may wrongly return -1

This commit is contained in:
Heng Li 2014-10-14 14:49:53 -04:00
parent 2485a3ca02
commit df20911110
2 changed files with 3 additions and 2 deletions

View File

@ -358,8 +358,9 @@ int bns_intv2rid(const bntseq_t *bns, int64_t rb, int64_t re)
{
int is_rev, rid_b, rid_e;
if (rb < bns->l_pac && re > bns->l_pac) return -2;
assert(rb <= re);
rid_b = bns_pos2rid(bns, bns_depos(bns, rb, &is_rev));
rid_e = bns_pos2rid(bns, bns_depos(bns, re, &is_rev) - 1);
rid_e = rb < re? bns_pos2rid(bns, bns_depos(bns, re - 1, &is_rev)) : rid_b;
return rid_b == rid_e? rid_b : -1;
}

2
main.c
View File

@ -4,7 +4,7 @@
#include "utils.h"
#ifndef PACKAGE_VERSION
#define PACKAGE_VERSION "0.7.10-r880-dirty"
#define PACKAGE_VERSION "0.7.10-r890-dirty"
#endif
int bwa_fa2pac(int argc, char *argv[]);