-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
std::optional<int8_t> level,
KeepAtime keep_atime)
{
- core::CacheEntry::Header header(dir_entry.path().string());
+ core::CacheEntry::Header header(dir_entry.path());
const int8_t wanted_level =
level ? (*level == 0 ? core::CacheEntry::default_compression_level : *level)
if (header.compression_level != wanted_level) {
const auto cache_file_data = util::value_or_throw<core::Error>(
- util::read_file<util::Bytes>(dir_entry.path().string()),
- FMT("Failed to read {}: ", dir_entry.path().string()));
+ util::read_file<util::Bytes>(dir_entry.path()),
+ FMT("Failed to read {}: ", dir_entry.path()));
core::CacheEntry cache_entry(cache_file_data);
cache_entry.verify_checksum();
level ? core::CompressionType::zstd : core::CompressionType::none;
header.compression_level = wanted_level;
- AtomicFile new_cache_file(dir_entry.path().string(),
- AtomicFile::Mode::binary);
+ AtomicFile new_cache_file(dir_entry.path(), AtomicFile::Mode::binary);
new_cache_file.write(
core::CacheEntry::serialize(header, cache_entry.payload()));
new_cache_file.commit();
- new_dir_entry =
- DirEntry(dir_entry.path().string(), DirEntry::LogOnError::yes);
+ new_dir_entry = DirEntry(dir_entry.path(), DirEntry::LogOnError::yes);
}
// Restore mtime/atime to keep cache LRU cleanup working as expected:
if (keep_atime == KeepAtime::yes || new_dir_entry) {
util::set_timestamps(
- dir_entry.path().string(), dir_entry.mtime(), dir_entry.atime());
+ dir_entry.path(), dir_entry.mtime(), dir_entry.atime());
}
m_content_size += util::likely_size_on_disk(header.entry_size);
uint64_t& files_in_cache)
{
const auto result =
- util::remove_nfs_safe(dir_entry.path().string(), util::LogFailure::no);
+ util::remove_nfs_safe(dir_entry.path(), util::LogFailure::no);
if (!result && result.error().value() != ENOENT
&& result.error().value() != ESTALE) {
- LOG("Failed to unlink {} ({})", dir_entry.path().string(), strerror(errno));
+ LOG("Failed to unlink {} ({})", dir_entry.path(), strerror(errno));
} else {
// The counters are intentionally subtracted even if there was no file to
// delete since the final cache size calculation will be incorrect if they
if (namespace_) {
try {
- core::CacheEntry::Header header(file.path().string());
+ core::CacheEntry::Header header(file.path());
if (header.namespace_ != *namespace_) {
continue;
}
l2_progress_receiver(0.5);
for (size_t i = 0; i < files.size(); ++i) {
- util::remove_nfs_safe(files[i].path().string());
+ util::remove_nfs_safe(files[i].path());
l2_progress_receiver(0.5 + 0.5 * ratio(i, files.size()));
}
for (size_t i = 0; i < files.size(); ++i) {
const auto& cache_file = files[i];
try {
- core::CacheEntry::Header header(cache_file.path().string());
+ core::CacheEntry::Header header(cache_file.path());
cs.actual_size += cache_file.size_on_disk();
cs.content_size += util::likely_size_on_disk(header.entry_size);
} catch (core::Error&) {