X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=chimerauchimecommand.h;h=6d9d001a142aaa6357cc81614c5f50af23f2bf76;hb=c27369bdcc3bebc4c449b9ae2f462d2a604a5503;hp=8861e19ffc4f2cca99fd50f38efd3d1f9798e2af;hpb=8159f34321e2c771638059b59a986caca9f3ab60;p=mothur.git diff --git a/chimerauchimecommand.h b/chimerauchimecommand.h index 8861e19..6d9d001 100644 --- a/chimerauchimecommand.h +++ b/chimerauchimecommand.h @@ -546,12 +546,13 @@ static DWORD WINAPI MyUchimeSeqsThreadFunction(LPVOID lpParam){ ofstream out23; pDataArray->m->openOutputFile(outputFileName, out23); + int fcount = 0; while (!in23.eof()) { if (pDataArray->m->control_pressed) { break; } Sequence seq(in23); pDataArray->m->gobble(in23); - if (seq.getName() != "") { seq.printSequence(out23); } + if (seq.getName() != "") { seq.printSequence(out23); fcount++; } } in23.close(); out23.close(); @@ -821,12 +822,15 @@ static DWORD WINAPI MyUchimeSeqsThreadFunction(LPVOID lpParam){ in.close(); out.close(); + if (fcount != totalSeqs) { pDataArray->m->mothurOut("[ERROR]: process " + toString(pDataArray->threadID) + " only processed " + toString(pDataArray->count) + " of " + toString(pDataArray->end) + " sequences assigned to it, quitting. \n"); pDataArray->m->control_pressed = true; } + if (pDataArray->m->control_pressed) { return 0; } pDataArray->m->mothurOutEndLine(); pDataArray->m->mothurOut("It took " + toString(time(NULL) - start) + " secs to check " + toString(totalSeqs) + " sequences."); pDataArray->m->mothurOutEndLine(); pDataArray->count = totalSeqs; pDataArray->numChimeras = numChimeras; + return totalSeqs; }