in csharp/NativeUtils/FileJanitor.cs [177:204]
public bool TryCleanup()
{
try
{
if (!Directory.Exists(_path))
return true;
bool success = true;
// Clean subdirs?
if (null != _subDirRegEx)
{
var dirs = Directory.EnumerateDirectories(_path);
Regex regex = new Regex(_subDirRegEx);
foreach (var dir in dirs)
if (regex.IsMatch(Path.GetFileNameWithoutExtension(dir)))
success &= FileJanitor.TryDeleteDirectory(dir);
}
if (0 != (_flags & CleanDir))
success &= FileJanitor.TryDeleteDirectory(_path);
return success;
}
catch
{
return false;
}
}