diff --git a/src/jamidht/jamiaccount.cpp b/src/jamidht/jamiaccount.cpp index 59f99013d5591708c3457f8890033b9390c1b170..a0ae8e737e1acf1c23126198d9a83bf6c50cd408 100644 --- a/src/jamidht/jamiaccount.cpp +++ b/src/jamidht/jamiaccount.cpp @@ -2491,7 +2491,7 @@ JamiAccount::saveTreatedMessages() const if (auto sthis = w.lock()) { auto& this_ = *sthis; std::lock_guard<std::mutex> lock(this_.messageMutex_); - dhtnet::fileutils::check_dir(this_.cachePath_.c_str()); + dhtnet::fileutils::check_dir(this_.cachePath_); saveIdList<decltype(this_.treatedMessages_)>((this_.cachePath_ / "treatedMessages").string(), this_.treatedMessages_); } @@ -3700,27 +3700,25 @@ JamiAccount::needToSendProfile(const std::string& peerUri, const std::string& sha3Sum) { std::string previousSha3 {}; - auto vCardPath = fmt::format("{}/vcard", cachePath_); - auto sha3Path = fmt::format("{}/sha3", vCardPath); + auto vCardPath = cachePath_ / "vcard"; + auto sha3Path = vCardPath / "sha3"; dhtnet::fileutils::check_dir(vCardPath, 0700); try { previousSha3 = fileutils::loadTextFile(sha3Path); } catch (...) { - fileutils::saveFile(sha3Path, {sha3Sum.begin(), sha3Sum.end()}, 0600); + fileutils::saveFile(sha3Path.string(), (const uint8_t*)sha3Sum.data(), sha3Sum.size(), 0600); return true; } if (sha3Sum != previousSha3) { // Incorrect sha3 stored. Update it dhtnet::fileutils::removeAll(vCardPath, true); - dhtnet::fileutils::check_dir(vCardPath.c_str(), 0700); - dhtnet::fileutils::saveFile(sha3Path, {sha3Sum.begin(), sha3Sum.end()}, 0600); + dhtnet::fileutils::check_dir(vCardPath, 0700); + fileutils::saveFile(sha3Path.string(), (const uint8_t*)sha3Sum.data(), sha3Sum.size(), 0600); return true; } - dhtnet::fileutils::recursive_mkdir(fmt::format("{}/{}/", vCardPath, peerUri)); - - auto path = fmt::format("{}/{}/{}", vCardPath, peerUri, deviceId); - auto res = not std::filesystem::is_regular_file(path); - return res; + auto peerPath = vCardPath / peerUri; + dhtnet::fileutils::recursive_mkdir(peerPath); + return not std::filesystem::is_regular_file(peerPath / deviceId); } bool