for (std::vector<filedesc>::iterator it = filelist.begin(); it != filelist.end();) {
if (it->name == filename) {
clean_up(it);
for (std::vector<filedesc>::iterator it = filelist.begin(); it != filelist.end();) {
if (it->name == filename) {
clean_up(it);