X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=parselistscommand.cpp;h=bb096d8646873f74c42bd8970b9eef9693a3252e;hb=8dd3c225255d7084e3aff8740aa4f1f1cabb367a;hp=e2c3e011c028a71bf79585519a7bbd9e25439c74;hpb=7bf9a81bba76538ecaf351ae208de3da4bf1b6dd;p=mothur.git diff --git a/parselistscommand.cpp b/parselistscommand.cpp index e2c3e01..bb096d8 100644 --- a/parselistscommand.cpp +++ b/parselistscommand.cpp @@ -175,11 +175,12 @@ int ParseListCommand::execute(){ //fill filehandles with neccessary ofstreams int i; ofstream* temp; - for (i=0; inamesOfGroups.size(); i++) { + vector gGroups = groupMap->getNamesOfGroups(); + for (i=0; inamesOfGroups[i]] = temp; + filehandles[gGroups[i]] = temp; - string filename = fileroot + groupMap->namesOfGroups[i] + ".list"; + string filename = fileroot + gGroups[i] + ".list"; outputNames.push_back(filename); outputTypes["list"].push_back(filename); m->openOutputFile(filename, *temp); } @@ -194,8 +195,9 @@ int ParseListCommand::execute(){ if (m->control_pressed) { delete input; delete list; delete groupMap; - for (i=0; inamesOfGroups.size(); i++) { (*(filehandles[groupMap->namesOfGroups[i]])).close(); delete filehandles[groupMap->namesOfGroups[i]]; } - for (int i = 0; i < outputNames.size(); i++) { remove(outputNames[i].c_str()); } outputTypes.clear(); + vector gGroups = groupMap->getNamesOfGroups(); + for (i=0; imothurRemove(outputNames[i]); } outputTypes.clear(); return 0; } @@ -203,8 +205,8 @@ int ParseListCommand::execute(){ if (m->control_pressed) { delete input; delete list; delete groupMap; - for (i=0; inamesOfGroups.size(); i++) { (*(filehandles[groupMap->namesOfGroups[i]])).close(); delete filehandles[groupMap->namesOfGroups[i]]; } - for (int i = 0; i < outputNames.size(); i++) { remove(outputNames[i].c_str()); } outputTypes.clear(); + for (i=0; imothurRemove(outputNames[i]); } outputTypes.clear(); return 0; } @@ -241,10 +243,10 @@ int ParseListCommand::execute(){ } if (m->control_pressed) { - delete input; delete groupMap; - for (i=0; inamesOfGroups.size(); i++) { (*(filehandles[groupMap->namesOfGroups[i]])).close(); delete filehandles[groupMap->namesOfGroups[i]]; } - for (int i = 0; i < outputNames.size(); i++) { remove(outputNames[i].c_str()); } outputTypes.clear(); - return 0; + delete input; delete groupMap; + for (i=0; imothurRemove(outputNames[i]); } outputTypes.clear(); + return 0; } //output error messages about any remaining user labels @@ -262,10 +264,10 @@ int ParseListCommand::execute(){ } if (m->control_pressed) { - delete input; delete groupMap; - for (i=0; inamesOfGroups.size(); i++) { (*(filehandles[groupMap->namesOfGroups[i]])).close(); delete filehandles[groupMap->namesOfGroups[i]]; } - for (int i = 0; i < outputNames.size(); i++) { remove(outputNames[i].c_str()); } outputTypes.clear(); - return 0; + delete input; delete groupMap; + for (i=0; imothurRemove(outputNames[i]); } outputTypes.clear(); + return 0; } //run last label if you need to @@ -289,7 +291,7 @@ int ParseListCommand::execute(){ delete input; if (m->control_pressed) { - for (int i = 0; i < outputNames.size(); i++) { remove(outputNames[i].c_str()); } outputTypes.clear(); + for (int i = 0; i < outputNames.size(); i++) { m->mothurRemove(outputNames[i]); } outputTypes.clear(); return 0; }