From 903d996e10401ec93a03b813cbc6ac4ace6a5dfa Mon Sep 17 00:00:00 2001 From: dec05eba Date: Wed, 4 Nov 2020 15:03:33 +0100 Subject: Test caching filter in matrix --- src/Storage.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/Storage.cpp') diff --git a/src/Storage.cpp b/src/Storage.cpp index 086f6d8..dadff5b 100644 --- a/src/Storage.cpp +++ b/src/Storage.cpp @@ -157,6 +157,15 @@ namespace QuickMedia { return file_overwrite(path, data.c_str(), data.size()); } + int file_overwrite_atomic(const Path &path, const std::string &data) { + Path tmp_path = path; + tmp_path.append(".tmp"); + int res = file_overwrite(tmp_path, data.c_str(), data.size()); + if(res != 0) + return res; + return rename(tmp_path.data.c_str(), path.data.c_str()); + } + void for_files_in_dir(const Path &path, FileIteratorCallback callback) { try { for(auto &p : std::filesystem::directory_iterator(path.data)) { -- cgit v1.2.3