Skip to content

Commit b49f58c

Browse files
committed
better clenanup on exit
1 parent f3cd422 commit b49f58c

File tree

1 file changed

+24
-31
lines changed

1 file changed

+24
-31
lines changed

src/ofxVisualProgramming.cpp

Lines changed: 24 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -450,16 +450,7 @@ void ofxVisualProgramming::drawSubpatchNavigation(){
450450
//--------------------------------------------------------------
451451
void ofxVisualProgramming::resetTempFolder(){
452452
ofDirectory dir;
453-
dir.listDir(ofToDataPath("temp/"));
454-
for(size_t i = 0; i < dir.size(); i++){
455-
if(dir.getFile(i).isDirectory()){
456-
ofDirectory temp;
457-
temp.removeDirectory(dir.getFile(i).getAbsolutePath(),true,true);
458-
}else{
459-
dir.getFile(i).remove();
460-
}
461-
462-
}
453+
dir.removeDirectory(ofToDataPath("temp/",true),true,true);
463454
}
464455

465456
//--------------------------------------------------------------
@@ -469,29 +460,31 @@ void ofxVisualProgramming::cleanPatchDataFolder(){
469460
dir.listDir(currentPatchFolderPath+"data/");
470461

471462
for(size_t i = 0; i < dir.size(); i++){
472-
if(dir.getFile(i).isFile()){
473-
map<string,string>::iterator sofpIT = scriptsObjectsFilesPaths.find(dir.getFile(i).getFileName());
474-
if (sofpIT == scriptsObjectsFilesPaths.end()){
475-
// not found in patch scripts map, remove it from patch data folder
476-
//ofLog(OF_LOG_NOTICE,"%s",dir.getFile(i).getAbsolutePath().c_str());
477-
string fileExt = ofToUpper(dir.getFile(i).getExtension());
478-
if(fileExt == "PY" || fileExt == "SH" || fileExt == "FRAG"){
479-
dir.getFile(i).remove();
480-
}
481-
// remove if filename is empty
482-
string tfn = dir.getFile(i).getFileName();
483-
if(dir.getFile(i).getFileName().substr(0,tfn.find_last_of('.')) == "empty"){
484-
dir.getFile(i).remove();
485-
}
486-
// remove alone .vert files
487-
if(fileExt == "VERT"){
488-
string vsName = dir.getFile(i).getFileName();
489-
string fsName = dir.getFile(i).getFileName().substr(0,vsName.find_last_of('.'))+".frag";
490-
map<string,string>::iterator sofpIT2 = scriptsObjectsFilesPaths.find(fsName);
491-
if (sofpIT2 == scriptsObjectsFilesPaths.end()){
492-
// related fragment shader not found in patch scripts map, remove it from patch data folder
463+
if(dir.getFile(i).exists()){
464+
if(dir.getFile(i).isFile()){
465+
map<string,string>::iterator sofpIT = scriptsObjectsFilesPaths.find(dir.getFile(i).getFileName());
466+
if (sofpIT == scriptsObjectsFilesPaths.end()){
467+
// not found in patch scripts map, remove it from patch data folder
468+
//ofLog(OF_LOG_NOTICE,"%s",dir.getFile(i).getAbsolutePath().c_str());
469+
string fileExt = ofToUpper(dir.getFile(i).getExtension());
470+
if(fileExt == "PY" || fileExt == "SH" || fileExt == "FRAG"){
471+
dir.getFile(i).remove();
472+
}
473+
// remove if filename is empty
474+
string tfn = dir.getFile(i).getFileName();
475+
if(dir.getFile(i).getFileName().substr(0,tfn.find_last_of('.')) == "empty"){
493476
dir.getFile(i).remove();
494477
}
478+
// remove alone .vert files
479+
if(fileExt == "VERT"){
480+
string vsName = dir.getFile(i).getFileName();
481+
string fsName = dir.getFile(i).getFileName().substr(0,vsName.find_last_of('.'))+".frag";
482+
map<string,string>::iterator sofpIT2 = scriptsObjectsFilesPaths.find(fsName);
483+
if (sofpIT2 == scriptsObjectsFilesPaths.end()){
484+
// related fragment shader not found in patch scripts map, remove it from patch data folder
485+
dir.getFile(i).remove();
486+
}
487+
}
495488
}
496489
}
497490
}

0 commit comments

Comments
 (0)