Skip to content
Snippets Groups Projects
Commit 8d8da12a authored by Adrien Béraud's avatar Adrien Béraud
Browse files

fileutils: add way to save file from any raw data

Change-Id: I6b778ec237ab4f517a710f1a827d55a264341e07
parent dfdc0b61
No related branches found
No related tags found
No related merge requests found
......@@ -378,7 +378,7 @@ loadFile(const std::string& path, const std::string& default_dir)
void
saveFile(const std::string& path,
const std::vector<uint8_t>& data,
const uint8_t* data, size_t data_size,
mode_t UNUSED mode)
{
std::ofstream file = fileutils::ofstream(path, std::ios::trunc | std::ios::binary);
......@@ -386,7 +386,7 @@ saveFile(const std::string& path,
JAMI_ERR("Could not write data to %s", path.c_str());
return;
}
file.write((char*)data.data(), data.size());
file.write((char*)data, data_size);
#ifndef _WIN32
if (chmod(path.c_str(), mode) < 0)
JAMI_WARN("fileutils::saveFile(): chmod() failed on '%s', %s", path.c_str(), strerror(errno));
......
......@@ -108,7 +108,10 @@ namespace jami { namespace fileutils {
* If path is relative, it is appended to default_dir.
*/
std::vector<uint8_t> loadFile(const std::string& path, const std::string& default_dir = {});
void saveFile(const std::string& path, const std::vector<uint8_t>& data, mode_t mode=0644);
void saveFile(const std::string& path, const uint8_t* data, size_t data_size, mode_t mode=0644);
inline void saveFile(const std::string& path, const std::vector<uint8_t>& data, mode_t mode=0644) {
saveFile(path, data.data(), data.size(), mode);
}
std::vector<uint8_t> readArchive(const std::string& path, const std::string& password = {});
void writeArchive(const std::string& data, const std::string& path, const std::string& password = {});
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment