Home » U++ Library support » U++ Core » Small bug in DeleteFolderDeep
Small bug in DeleteFolderDeep [message #47652] |
Tue, 21 February 2017 20:24  |
mdelfede
Messages: 1308 Registered: September 2007
|
Ultimate Contributor |
|
|
Hi,
if a folder contains a symbolic link it doesn't get deleted; solution is to patch this
bool DeleteFolderDeep(const char *dir)
{
{
FindFile ff(AppendFileName(dir, "*.*"));
while(ff) {
String name = ff.GetName();
String p = AppendFileName(dir, name);
if(ff.IsFile())
FileDelete(p);
else
if(ff.IsFolder())
DeleteFolderDeep(p);
ff.Next();
}
}
return DirectoryDelete(dir);
}
to this
bool DeleteFolderDeep(const char *dir)
{
{
FindFile ff(AppendFileName(dir, "*.*"));
while(ff) {
String name = ff.GetName();
String p = AppendFileName(dir, name);
if(ff.IsFile() || ff.IsSymLink())
FileDelete(p);
else
if(ff.IsFolder())
DeleteFolderDeep(p);
ff.Next();
}
}
return DirectoryDelete(dir);
}
In order to have symlinks deleted too.
Ciao
Max
|
|
|
|
Goto Forum:
Current Time: Sun May 11 11:41:36 CEST 2025
Total time taken to generate the page: 0.03385 seconds
|