diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2025-01-29 12:46:06 +0100 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2025-01-29 15:09:18 +0100 |
commit | 48c2382218a5af10177e68ba24091e77f1e045e6 (patch) | |
tree | dfb304b1e7d17ade7d27687198c0b50055aa6b38 /src | |
parent | da749a585ab920d10f6379ebc465221732d23610 (diff) | |
download | justbuild-48c2382218a5af10177e68ba24091e77f1e045e6.tar.gz |
garbage collection: remove garbage recursively
When garbage collecting the oldest generation, we expect it to be
a non-empty directory. Therefore, remove it recursively.
Diffstat (limited to 'src')
-rw-r--r-- | src/buildtool/storage/repository_garbage_collector.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/buildtool/storage/repository_garbage_collector.cpp b/src/buildtool/storage/repository_garbage_collector.cpp index 6e4a2609..c5aa1f75 100644 --- a/src/buildtool/storage/repository_garbage_collector.cpp +++ b/src/buildtool/storage/repository_garbage_collector.cpp @@ -58,7 +58,8 @@ auto RepositoryGarbageCollector::TriggerGarbageCollection( return false; } if (FileSystemManager::IsDirectory(remove_me)) { - if (not FileSystemManager::RemoveDirectory(remove_me)) { + if (not FileSystemManager::RemoveDirectory(remove_me, + /*recursively=*/true)) { Logger::Log(LogLevel::Error, "Failed to remove directory {}", remove_me.string()); @@ -110,7 +111,8 @@ auto RepositoryGarbageCollector::TriggerGarbageCollection( return false; } if (FileSystemManager::IsDirectory(remove_me)) { - if (not FileSystemManager::RemoveDirectory(remove_me)) { + if (not FileSystemManager::RemoveDirectory(remove_me, + /*recursively=*/true)) { Logger::Log(LogLevel::Error, "Failed to remove directory {}", remove_me.string()); |