}
//you have a label the user want that is smaller than this label and the last label has not already been processed
if ((anyLabelsToProcess(order->getLabel(), userLabels, "") == true) && (processedLabels.count(lastLabel) != 1)) {
+ string saveLabel = order->getLabel();
delete order;
order = (input->getOrderVector(lastLabel));
mothurOut(order->getLabel()); mothurOutEndLine();
processedLabels.insert(order->getLabel());
userLabels.erase(order->getLabel());
+
+ //restore real lastlabel to save below
+ order->setLabel(saveLabel);
}
lastLabel = order->getLabel();