diff --git a/src/ecopcr.c b/src/ecopcr.c index 2b236b6..055080a 100644 --- a/src/ecopcr.c +++ b/src/ecopcr.c @@ -614,8 +614,10 @@ int main(int argc, char **argv) length = 0; if (posj > posi) length = posj - posi - o1->patlen - o2->patlen; - if (posj < posi) - length = posj + apatseq->seqlen - posi - o1->patlen - o2->patlen; + else { + if (circular > 0) + length = posj + apatseq->seqlen - posi - o1->patlen - o2->patlen; + } if ((length>0) && // For when primers touch or overlap (!lmin || (length >= lmin)) && (!lmax || (length <= lmax))) @@ -648,7 +650,7 @@ int main(int argc, char **argv) } o1cHits = ManberAll(apatseq,o1c,3,begin,length); - + printf("circular= %d\n",circular); if (o1cHits) for (i=0; i < o2Hits;i++) { @@ -668,8 +670,11 @@ int main(int argc, char **argv) length = 0; if (posj > posi) length = posj - posi + 1 - o2->patlen - o1->patlen; /* - o1->patlen : deleted by (prior to the OBITools3) */ - if (posj < posi) + else { + if (circular > 0) length = posj + apatseq->seqlen - posi - o1->patlen - o2->patlen; + } + if ((length>0) && // For when primers touch or overlap (!lmin || (length >= lmin)) && (!lmax || (length <= lmax)))